Kishen Das created HIVE-24794:
---------------------------------

             Summary: Populate tableId in the response of get_valid_write_ids 
API
                 Key: HIVE-24794
                 URL: https://issues.apache.org/jira/browse/HIVE-24794
             Project: Hive
          Issue Type: Sub-task
          Components: HiveServer2
            Reporter: Kishen Das


In HS2, after query compilation phase, we acquire lock in DriverTxnHandler.

isValidTxnListState and later ensure there are no conflicting transactions by 
using driverContext.getTxnManager().getLatestTxnIdInConflict(); . This doesn't 
work well, if there are external entities that drop and recreate the table with 
the same name. So, we should also make sure the tableId itself is not changed, 
after lock has been acquired. This Jira is to enhance getValidWriteIdList to 
return tableId as well. Idea is to cache the tableId in SessionState and later 
compare it with what getValidWriteIdList returns. If the table was dropped and 
recreated, the tableId will not match and we have to recompile the query. 
Caching the tableId in SessionState will be done as part of a separate Jira. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to