@@ -171,19 +171,33 @@ private AbstractQueryStreamResult commonExecute(InitQueryResultCallback<Abstract
171171 }
172172 if (tableQuery .getIndexName () != null ) {
173173 this .partitionObTables .put (0L , new ObPair <Long , ObTableParam >(0L , new ObTableParam (
174- obTableClient .getOdpTable ())));
174+ obTableClient .getOdpTable ())));
175175 } else if (getPartId () == null ) {
176176 initPartitions ();
177177 } else {
178+ String realTableName = tableName ;
179+ if (this .entityType == ObTableEntityType .HKV
180+ && obTableClient .isTableGroupName (tableName )) {
181+ indexTableName = obTableClient .tryGetTableNameFromTableGroupCache (tableName ,
182+ false );
183+ realTableName = indexTableName ;
184+ }
178185 ObPair <Long , ObTableParam > odpTable = obTableClient .getODPTableWithPartId (
179- tableName , getPartId (), false );
186+ realTableName , getPartId (), false );
180187 this .partitionObTables .put (odpTable .getLeft (), odpTable );
181188 }
182189 } else {
183190 if (getPartId () == null ) {
184191 initPartitions ();
185192 } else { // directly get table from table entry by logic partId
186- ObPair <Long , ObTableParam > table = obTableClient .getTableWithPartId (tableName ,
193+ if (this .entityType != ObTableEntityType .HKV ) {
194+ indexTableName = obTableClient .getIndexTableName (tableName ,
195+ tableQuery .getIndexName (), tableQuery .getScanRangeColumns (), false );
196+ } else if (obTableClient .isTableGroupName (tableName )) {
197+ indexTableName = obTableClient .tryGetTableNameFromTableGroupCache (tableName ,
198+ false );
199+ }
200+ ObPair <Long , ObTableParam > table = obTableClient .getTableWithPartId (indexTableName ,
187201 getPartId (), false , false , false , obTableClient .getRoute (false ));
188202 partitionObTables .put (table .getLeft (), table );
189203 }
0 commit comments