Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
ghx-label-13
Description
alterPartitionsWithTransaction() has a for loop that updates the write ids of the partitions.
Unfortunately it also does an RPC inside the for loop that updates all partitions. This could be done outside of the for loop.
public static void alterPartitionsWithTransaction(IMetaStoreClient client, String dbName, String tblName, List<Partition> partitions, TblTransaction tblTxn ) throws InvalidOperationException, MetaException, TException { for (Partition part : partitions) { part.setWriteId(tblTxn.writeId); // Correct validWriteIdList is needed // to commit the alter partitions operation in hms side. client.alter_partitions(dbName, tblName, partitions, null, tblTxn.validWriteIds, tblTxn.writeId); } }