if (index.getColumns().size()-minIndexPKOffset != table.getColumns().size()-minTablePKOffset) {
// We'll end up not using this by the optimizer, so just throw
throw new ColumnNotFoundException(WildcardParseNode.INSTANCE.toString());
}
for (int i = tableOffset, j = tableOffset; i < table.getColumns().size(); i++) {
PColumn column = table.getColumns().get(i);
// Skip tenant ID column (which may not be the first column, but is the first PK column)
if (SchemaUtil.isPKColumn(column) && j++ < minTablePKOffset) {
tableOffset++;
continue;
}
PColumn tableColumn = table.getColumns().get(i);
String indexColName = IndexUtil.getIndexColumnName(tableColumn);
PColumn indexColumn = index.getColumn(indexColName);
ColumnRef ref = new ColumnRef(tableRef,indexColumn.getPosition());
String colName = tableColumn.getName().getString();
if (resolveColumn) {
if (tableRef.getTableAlias() != null) {
ref = resolver.resolveColumn(null, tableRef.getTableAlias(), indexColName);
colName = SchemaUtil.getColumnName(tableRef.getTableAlias(), colName);