Github user BinShi-SecularBird commented on a diff in the pull request:
https://github.com/apache/phoenix/pull/359#discussion_r223906186
--- Diff:
phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java
---
@@ -2655,10 +2666,19 @@ private MetaDataMutationResult doDropTable(byte[]
key, byte[] tenantId, byte[] s
boolean hasChildViews =
ViewFinder.hasChildViews(hTable, tenantId,
schemaName, tableName,
clientTimeStamp);
- if (hasChildViews && !isCascade) {
- // DROP without CASCADE on tables with child views
is not permitted
- return new
MetaDataMutationResult(MutationCode.UNALLOWED_TABLE_MUTATION,
-
EnvironmentEdgeManager.currentTimeMillis(), null);
+ if (hasChildViews) {
+ if (!isCascade) {
+ // DROP without CASCADE on tables with child
views is not permitted
--- End diff --
Why do we have this limitation? Shouldn't DROP mean "DROP CASCADE" in the
case that the table has child views? This comment is orthogonal to this pull
request as it exists in the original code base.
---