[jira] [Commented] (PHOENIX-3639) WALEntryFilter to block System.Catalog replication
[ https://issues.apache.org/jira/browse/PHOENIX-3639?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15866293#comment-15866293 ] James Taylor commented on PHOENIX-3639: --- +1. Thanks, [~gjacoby] - this looks very clean to me already. I'll get this committed shortly. If you have a few spare cycles, it would be most appreciated if you could right up a paragraph or two documenting how best to configure replication in Phoenix (and the config options that should be set). We get asked this frequently on the mailing list. Maybe a new Replication page in the Using menu after Tuning? > WALEntryFilter to block System.Catalog replication > -- > > Key: PHOENIX-3639 > URL: https://issues.apache.org/jira/browse/PHOENIX-3639 > Project: Phoenix > Issue Type: Improvement >Affects Versions: 4.8.0, 4.9.0 >Reporter: Geoffrey Jacoby >Assignee: Geoffrey Jacoby > Labels: replication > Attachments: PHOENIX-3639.patch, PHOENIX-3639.v2.patch > > > As a stopgap before PHOENIX-3520, we can create an HBase WALEntryFilter to > filter out non-tenant rows of SYSTEM.CATALOG from replication while allowing > tenant-owned rows such as tenant views to proceed with replication. > This would have to be incorporated into a ReplicationEndpoint subclass to be > useful, though HBASE-17543 would make that much simpler by doing it via > configuration rather than code (and avoiding the need for a new peer to be > created). > If PHOENIX-3520 is on the near-future roadmap, however, that would be the > better solution to the "replication corrupts SYSTEM.CATALOG" problem. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (PHOENIX-3639) WALEntryFilter to block System.Catalog replication
[ https://issues.apache.org/jira/browse/PHOENIX-3639?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15858540#comment-15858540 ] Hadoop QA commented on PHOENIX-3639: {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12851722/PHOENIX-3639.v2.patch against master branch at commit 3519b3b549ac05a2ec0713ba94077cf4c6c2fe20. ATTACHMENT ID: 12851722 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 4 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 43 warning messages. {color:red}-1 release audit{color}. The applied patch generated 2 release audit warnings (more than the master's current 0 warnings). {color:red}-1 lineLengths{color}. The patch introduces the following lines longer than 100: + private static final String CREATE_TENANT_VIEW_SQL = "CREATE VIEW IF NOT EXISTS " + SCHEMA_NAME + "." + private static final String CREATE_NONTENANT_VIEW_SQL = "CREATE VIEW IF NOT EXISTS " + SCHEMA_NAME + "." + private static final String DROP_NONTENANT_VIEW_SQL = "DROP VIEW IF EXISTS " + NONTENANT_VIEW_NAME; + catalogTable = PhoenixRuntime.getTable(connection, PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME); + walKey = new WALKey(REGION, TableName.valueOf(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME), 0, 0, uuid); + Assert.assertTrue("Didn't retrieve any cells from SYSTEM.CATALOG", edit.getCells().size() > 0); {color:red}-1 core tests{color}. The patch failed these unit tests: ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolForPartialBuildWithNamespaceEnabledIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.QueryTimeoutIT {color:red}-1 core zombie tests{color}. There are 1 zombie test(s): at org.apache.qpid.test.utils.QpidTestCase.run(QpidTestCase.java:156) Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/758//testReport/ Release audit warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/758//artifact/patchprocess/patchReleaseAuditWarnings.txt Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/758//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/758//console This message is automatically generated. > WALEntryFilter to block System.Catalog replication > -- > > Key: PHOENIX-3639 > URL: https://issues.apache.org/jira/browse/PHOENIX-3639 > Project: Phoenix > Issue Type: Improvement >Affects Versions: 4.8.0, 4.9.0 >Reporter: Geoffrey Jacoby >Assignee: Geoffrey Jacoby > Labels: replication > Attachments: PHOENIX-3639.patch, PHOENIX-3639.v2.patch > > > As a stopgap before PHOENIX-3520, we can create an HBase WALEntryFilter to > filter out non-tenant rows of SYSTEM.CATALOG from replication while allowing > tenant-owned rows such as tenant views to proceed with replication. > This would have to be incorporated into a ReplicationEndpoint subclass to be > useful, though HBASE-17543 would make that much simpler by doing it via > configuration rather than code (and avoiding the need for a new peer to be > created). > If PHOENIX-3520 is on the near-future roadmap, however, that would be the > better solution to the "replication corrupts SYSTEM.CATALOG" problem. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (PHOENIX-3639) WALEntryFilter to block System.Catalog replication
[ https://issues.apache.org/jira/browse/PHOENIX-3639?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15857227#comment-15857227 ] Hadoop QA commented on PHOENIX-3639: {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12851475/PHOENIX-3639.patch against master branch at commit 3519b3b549ac05a2ec0713ba94077cf4c6c2fe20. ATTACHMENT ID: 12851475 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 4 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:red}-1 javadoc{color}. The javadoc tool appears to have generated 43 warning messages. {color:red}-1 release audit{color}. The applied patch generated 2 release audit warnings (more than the master's current 0 warnings). {color:red}-1 lineLengths{color}. The patch introduces the following lines longer than 100: + private static final String CREATE_TENANT_VIEW_SQL = "CREATE VIEW IF NOT EXISTS " + SCHEMA_NAME + "." + private static final String CREATE_NONTENANT_VIEW_SQL = "CREATE VIEW IF NOT EXISTS " + SCHEMA_NAME + "." + private static final String DROP_NONTENANT_VIEW_SQL = "DROP VIEW IF EXISTS " + NONTENANT_VIEW_NAME; + catalogTable = PhoenixRuntime.getTable(connection, PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME); + walKey = new WALKey(REGION, TableName.valueOf(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME), 0, 0, uuid); + Assert.assertTrue("Didn't retrieve any cells from SYSTEM.CATALOG", edit.getCells().size() > 0); {color:green}+1 core tests{color}. The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/756//testReport/ Release audit warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/756//artifact/patchprocess/patchReleaseAuditWarnings.txt Javadoc warnings: https://builds.apache.org/job/PreCommit-PHOENIX-Build/756//artifact/patchprocess/patchJavadocWarnings.txt Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/756//console This message is automatically generated. > WALEntryFilter to block System.Catalog replication > -- > > Key: PHOENIX-3639 > URL: https://issues.apache.org/jira/browse/PHOENIX-3639 > Project: Phoenix > Issue Type: Improvement >Affects Versions: 4.8.0, 4.9.0 >Reporter: Geoffrey Jacoby >Assignee: Geoffrey Jacoby > Attachments: PHOENIX-3639.patch > > > As a stopgap before PHOENIX-3520, we can create an HBase WALEntryFilter to > filter out non-tenant rows of SYSTEM.CATALOG from replication while allowing > tenant-owned rows such as tenant views to proceed with replication. > This would have to be incorporated into a ReplicationEndpoint subclass to be > useful, though HBASE-17543 would make that much simpler by doing it via > configuration rather than code (and avoiding the need for a new peer to be > created). > If PHOENIX-3520 is on the near-future roadmap, however, that would be the > better solution to the "replication corrupts SYSTEM.CATALOG" problem. -- This message was sent by Atlassian JIRA (v6.3.15#6346)