Details
Description
When calling any of the methods on hiveserver2, we call _get_handle. This method converts a base64 encoded string to binary in place without any checks. Multiple calls to the base64 conversion creates garbage. This is a problem for the caller who wants to call multiple methods of as the second one will fail
e.g.
a snippet has a handle with a base64 guid in snippet['result']['handle']['guid']
hiverserver2.check_status(notebook, snippet) # snippet['result']['handle']['guid'] is now in binary format.
hiverserver2.get_log(notebook, snippet) # base64 conversion fails because the guid is already in binary format.
The fix is to not do in place conversion.