Description
Currently the Java client `tableExists()` method uses a ListTables rpc. Instead it should use a GetTableSchema rpc.
Based on a comment in this review it could be especially important when authorization via Sentry is enabled:
...tableExists() is a bad idea if Sentry integration is enabled. That's because tableExists() results in a ListTables RPC, and ListTables is going to perform really poorly with a cold Sentry cache: it'll send an RPC to Sentry for every table in the catalog. Coupled with the loop here (for each table being backed up) and it's bad news all around...