Github user JamesRTaylor commented on a diff in the pull request:
https://github.com/apache/phoenix/pull/303#discussion_r191942250
--- Diff:
phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java
---
@@ -2227,35 +2551,36 @@ private MetaDataMutationResult doDropTable(byte[]
key, byte[] tenantId, byte[] s
// in 0.94.4, thus if we try to use it here we can no longer
use the 0.94.2 version
// of the client.
Delete delete = new Delete(indexKey, clientTimeStamp);
- rowsToDelete.add(delete);
- acquireLock(region, indexKey, locks);
+ catalogMutations.add(delete);
MetaDataMutationResult result =
doDropTable(indexKey, tenantId, schemaName, indexName,
tableName, PTableType.INDEX,
- rowsToDelete, invalidateList, locks,
tableNamesToDelete, sharedTablesToDelete, false, clientVersion);
+ catalogMutations, childLinkMutations,
invalidateList, tableNamesToDelete, sharedTablesToDelete, false, clientVersion);
if (result.getMutationCode() !=
MutationCode.TABLE_ALREADY_EXISTS) {
return result;
}
}
+ // no need to pass sharedTablesToDelete back to the client as they
deletion of these tables
+ // is already handled in MetadataClient.dropTable
--- End diff --
Not sure if this is handled differently now, but we passed this back
because I believe we don't know on the client all of the physical index tables
to delete. I think we have a test for this.
---