[ 
https://issues.apache.org/jira/browse/PHOENIX-3432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15627503#comment-15627503
 ] 

James Taylor commented on PHOENIX-3432:
---------------------------------------

[~samarthjain] - can you take a look?

> Upgrade Phoenix 4.8.0 to 4.9.0 failed
> -------------------------------------
>
>                 Key: PHOENIX-3432
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3432
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.8.0
>         Environment: HBase 1.1.7, Phoenix 4.9.0 RC0
>            Reporter: YoungWoo Kim
>
> Trying to upgrade 4.8.0 to 4.9.0, I did stop the all hbase services and 
> upgraded Phoenix binary to 4.9.0 RC0 and then, restarted hbase services. 
> actually I'm trying automatic upgrade using sqlline but it does not works as 
> I expected.
> {noformat}
> 16/11/02 09:53:03 WARN query.ConnectionQueryServicesImpl: Successfully 
> enabled SYSTEM:CATALOG after restoring using snapshot 
> SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900 failed. 
> Error: java.lang.IllegalArgumentException: Illegal character code:58, <:> at 
> 15. Snapshot qualifiers can only contain 'alphanumeric characters': i.e. 
> [a-zA-Z_0-9-.]: SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900 
> (state=,code=0)
> java.sql.SQLException: java.lang.IllegalArgumentException: Illegal character 
> code:58, <:> at 15. Snapshot qualifiers can only contain 'alphanumeric 
> characters': i.e. [a-zA-Z_0-9-.]: 
> SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.createSnapshot(ConnectionQueryServicesImpl.java:2843)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.upgradeSystemTables(ConnectionQueryServicesImpl.java:2524)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$13.call(ConnectionQueryServicesImpl.java:2427)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$13.call(ConnectionQueryServicesImpl.java:2361)
>       at 
> org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:76)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:2361)
>       at 
> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:232)
>       at 
> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.createConnection(PhoenixEmbeddedDriver.java:147)
>       at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:202)
>       at sqlline.DatabaseConnection.connect(DatabaseConnection.java:157)
>       at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:203)
>       at sqlline.Commands.connect(Commands.java:1064)
>       at sqlline.Commands.connect(Commands.java:996)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at 
> sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:38)
>       at sqlline.SqlLine.dispatch(SqlLine.java:809)
>       at sqlline.SqlLine.initArgs(SqlLine.java:588)
>       at sqlline.SqlLine.begin(SqlLine.java:661)
>       at sqlline.SqlLine.start(SqlLine.java:398)
>       at sqlline.SqlLine.main(SqlLine.java:291)
> Caused by: java.lang.IllegalArgumentException: Illegal character code:58, <:> 
> at 15. Snapshot qualifiers can only contain 'alphanumeric characters': i.e. 
> [a-zA-Z_0-9-.]: SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900
>       at 
> org.apache.hadoop.hbase.TableName.isLegalTableQualifierName(TableName.java:196)
>       at 
> org.apache.hadoop.hbase.TableName.isLegalTableQualifierName(TableName.java:154)
>       at 
> org.apache.hadoop.hbase.snapshot.ClientSnapshotDescriptionUtils.assertSnapshotRequestIsValid(ClientSnapshotDescriptionUtils.java:42)
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.takeSnapshotAsync(HBaseAdmin.java:3568)
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.snapshot(HBaseAdmin.java:3516)
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.snapshot(HBaseAdmin.java:3474)
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.snapshot(HBaseAdmin.java:3393)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.createSnapshot(ConnectionQueryServicesImpl.java:2839)
>       ... 22 more
> Error: org.apache.hadoop.hbase.snapshot.RestoreSnapshotException: Unable to 
> find the table name for 
> snapshot=SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900 
> (state=,code=0)
> java.sql.SQLException: 
> org.apache.hadoop.hbase.snapshot.RestoreSnapshotException: Unable to find the 
> table name for 
> snapshot=SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.restoreFromSnapshot(ConnectionQueryServicesImpl.java:2882)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.upgradeSystemTables(ConnectionQueryServicesImpl.java:2816)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$13.call(ConnectionQueryServicesImpl.java:2427)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$13.call(ConnectionQueryServicesImpl.java:2361)
>       at 
> org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:76)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:2361)
>       at 
> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:232)
>       at 
> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.createConnection(PhoenixEmbeddedDriver.java:147)
>       at org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:202)
>       at sqlline.DatabaseConnection.connect(DatabaseConnection.java:157)
>       at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:203)
>       at sqlline.Commands.connect(Commands.java:1064)
>       at sqlline.Commands.connect(Commands.java:996)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at 
> sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:38)
>       at sqlline.SqlLine.dispatch(SqlLine.java:809)
>       at sqlline.SqlLine.initArgs(SqlLine.java:588)
>       at sqlline.SqlLine.begin(SqlLine.java:661)
>       at sqlline.SqlLine.start(SqlLine.java:398)
>       at sqlline.SqlLine.main(SqlLine.java:291)
> Caused by: org.apache.hadoop.hbase.snapshot.RestoreSnapshotException: Unable 
> to find the table name for 
> snapshot=SNAPSHOT_SYSTEM:CATALOG_4.8.x_TO_4.9.0_20161102095256+0900
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.restoreSnapshot(HBaseAdmin.java:3707)
>       at 
> org.apache.hadoop.hbase.client.HBaseAdmin.restoreSnapshot(HBaseAdmin.java:3654)
>       at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.restoreFromSnapshot(ConnectionQueryServicesImpl.java:2877)
>       ... 22 more
> sqlline version 1.2.0
> {noformat}
> One thing to note here, We are using namespace mapping:
> {code}
> <property>
> <name>phoenix.schema.isNamespaceMappingEnabled</name>
> <value>true</value>
> </property>
> {code}
>  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to