[
https://issues.apache.org/jira/browse/PHOENIX-6653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17579912#comment-17579912
]
ASF GitHub Bot commented on PHOENIX-6653:
-----------------------------------------
gjacoby126 commented on PR #1485:
URL: https://github.com/apache/phoenix/pull/1485#issuecomment-1215798604
Code looks fine but there's a failure in the new test:
`ERROR]
org.apache.phoenix.end2end.LoadSystemTableSnapshotIT.testPhoenixUpgrade Time
elapsed: 39.083 s <<< ERROR!
org.apache.phoenix.schema.ColumnNotFoundException: ERROR 504 (42703):
Undefined column. columnName=SYSTEM.CATALOG.COLUMN_QUALIFIER
at
org.apache.phoenix.schema.PTableImpl.getColumnForColumnName(PTableImpl.java:1278)
at
org.apache.phoenix.compile.FromCompiler$SingleTableColumnResolver.resolveColumn(FromCompiler.java:533)
at
org.apache.phoenix.compile.UpsertCompiler.compile(UpsertCompiler.java:525)
at
org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpsertStatement.compilePlan(PhoenixStatement.java:1006)
at
org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpsertStatement.compilePlan(PhoenixStatement.java:992)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:537)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:519)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:518)
at
org.apache.phoenix.jdbc.PhoenixStatement.access$800(PhoenixStatement.java:246)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:584)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:519)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:518)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:506)
at
org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:168)
at
org.apache.phoenix.jdbc.PhoenixPreparedStatement.execute(PhoenixPreparedStatement.java:178)
at
org.apache.phoenix.schema.ColumnMetaDataOps.addColumnMutationInternal(ColumnMetaDataOps.java:139)
at
org.apache.phoenix.schema.ColumnMetaDataOps.addColumnMutation(ColumnMetaDataOps.java:89)
at
org.apache.phoenix.schema.MetaDataClient.addColumn(MetaDataClient.java:4014)
at
org.apache.phoenix.schema.MetaDataClient.addColumn(MetaDataClient.java:3797)
at
org.apache.phoenix.jdbc.PhoenixStatement$ExecutableAddColumnStatement$1.execute(PhoenixStatement.java:1733)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:553)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:519)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:518)
at
org.apache.phoenix.jdbc.PhoenixStatement.access$800(PhoenixStatement.java:246)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:584)
at
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:519)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:518)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:506)
at
org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:2149)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl.addColumn(ConnectionQueryServicesImpl.java:3256)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl.addColumnsIfNotExists(ConnectionQueryServicesImpl.java:3285)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl.upgradeSystemCatalogIfRequired(ConnectionQueryServicesImpl.java:3825)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl.upgradeSystemTables(ConnectionQueryServicesImpl.java:4090)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:3459)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:3360)
at
org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:76)
at
org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:3360)
at
org.apache.phoenix.jdbc.PhoenixTestDriver.getConnectionQueryServices(PhoenixTestDriver.java:96)
at
org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.createConnection(PhoenixEmbeddedDriver.java:144)
at
org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:138)
at
org.apache.phoenix.jdbc.PhoenixTestDriver.connect(PhoenixTestDriver.java:83)
at
org.apache.phoenix.query.BaseTest.initAndRegisterTestDriver(BaseTest.java:672)
at org.apache.phoenix.query.BaseTest.setUpTestDriver(BaseTest.java:522)
at
org.apache.phoenix.end2end.LoadSystemTableSnapshotIT.testPhoenixUpgrade(LoadSystemTableSnapshotIT.java:172)`
> Add upgrade tests based on HBase snapshots
> ------------------------------------------
>
> Key: PHOENIX-6653
> URL: https://issues.apache.org/jira/browse/PHOENIX-6653
> Project: Phoenix
> Issue Type: Test
> Components: core
> Reporter: Istvan Toth
> Assignee: Richárd Antal
> Priority: Major
>
> Our current upgrade tests operate by downloading older Phoenix versions, and
> using those to create the "before" state for upgrade.
> This limits the upgrade tests to versions that support overlapping HBase
> versions, which means that there are no upgrade tests for 5.1 for example.
> We could instead store HBase snapshots to states (system + test tables)
> created by older Phoenix versions, use bulk loading to load them, and run the
> upgrade tests on that state.
> As HBase snapshots are generally portable between versions, this would enable
> testing of a wide variatey of scenarios that are untestable now. (i.e. 4.7 to
> 5.1, anything to 5.1, 4.16 to 5.1)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)