I don't know the plugin and am not entirely sure I can think what you might have in mind that concerns you about a possible failure of this.
But my logic says that if a function fails under any possible conditions that could lead to a function fail, then it won't complete its operation, therefore we won't get the expected outcome.
In the case of the plugin as you have described it, it simply won't add the user to his selected usergroup.
Now it's always on the good design aspect of code to take into consideration any possible errors and return an error message or something else that will be useful, if an error occurs.
First query runs fine, while usergroup is a necessary field that must be filled out. In a custom php script, we can use sql transaction, but
when we extend joomla plugin, how can we do this?
This sounds like a rare situation to have a failure right after executing the user save function and before making it to assign it to the selected usergroup - but if you go that far, it could be possible.
However the scope of the plugin you use seems to be an easy-going workflow of letting users change their usergroup, than a very strict one that should never fail to assign a new registered user to a selected usergroup.
In such case, you can write your own registration plugin with a onUserBeforeSave function, so you will pass the selected usergroup alongside with the user creation. Yet, I am not sure if there is a transaction involved in this workflow, so it will perform all or nothing updates in the related tables.