Add logic for invoking new server-side API (Refresh Table Information)
Reuse InternalStage for all the JDBC interop. For this:
pass in a tableRef into InternalStage
Add a IStorageManager.getRefreshedLocation API that's called by InternalStage
Add SubscopedTokenExternalVolumeManager that creates an InternalStage per table, and fetches new credentials via the new API from (1). InternalStage calls storageManager.getRefreshedLocation and doesn't care whether it is operating on an account's internal stage's streaming_ingest subfolder (FDN ingestion) or on a per-session location under the external volume's S3 location.
Remove from InternalStage and InternalStageManager
Note that after this change, InternalStage can / should be renamed, did not want to make this PR even bigger thus haven't done that yet.
New tests for SubscopedTokenExtVolManager are pending. Sending this out for review + to see if any merge gate tests barf.
Note that after this change, InternalStage can / should be renamed, did not want to make this PR even bigger thus haven't done that yet.
New tests for SubscopedTokenExtVolManager are pending. Sending this out for review + to see if any merge gate tests barf.