[jira] [Resolved] (PHOENIX-3424) Backward compatibility failure: 4.8 -> 4.9 upgrade

2016-10-29 Thread James Taylor (JIRA)

 [ 
https://issues.apache.org/jira/browse/PHOENIX-3424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Taylor resolved PHOENIX-3424.
---
Resolution: Fixed

> Backward compatibility failure: 4.8 -> 4.9 upgrade
> --
>
> Key: PHOENIX-3424
> URL: https://issues.apache.org/jira/browse/PHOENIX-3424
> Project: Phoenix
>  Issue Type: Bug
>Reporter: Mujtaba Chohan
>Assignee: James Taylor
> Fix For: 4.9.0
>
> Attachments: PHOENIX-3424.patch, PHOENIX-3424_wip.patch
>
>
> {noformat}
> Caused by: java.lang.IllegalStateException: Didn't find all required key 
> values in 'COLUMN_FAMILY' column metadata row
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.addColumnToTable(MetaDataEndpointImpl.java:671)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:958)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:543)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.loadTable(MetaDataEndpointImpl.java:1210)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:1389)
>   ... 10 more (state=08000,code=101)
> {noformat}



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


[jira] [Updated] (PHOENIX-3424) Backward compatibility failure: 4.8 -> 4.9 upgrade

2016-10-29 Thread James Taylor (JIRA)

 [ 
https://issues.apache.org/jira/browse/PHOENIX-3424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Taylor updated PHOENIX-3424:
--
Attachment: PHOENIX-3424.patch

This fixes the problem. Please review, [~samarthjain]. Also, can you make sure 
that it works the restore the snapshot made before upgrade? I wasn't able to do 
that, but maybe I was doing something wrong.

> Backward compatibility failure: 4.8 -> 4.9 upgrade
> --
>
> Key: PHOENIX-3424
> URL: https://issues.apache.org/jira/browse/PHOENIX-3424
> Project: Phoenix
>  Issue Type: Bug
>Reporter: Mujtaba Chohan
>Assignee: James Taylor
> Fix For: 4.9.0
>
> Attachments: PHOENIX-3424.patch, PHOENIX-3424_wip.patch
>
>
> {noformat}
> Caused by: java.lang.IllegalStateException: Didn't find all required key 
> values in 'COLUMN_FAMILY' column metadata row
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.addColumnToTable(MetaDataEndpointImpl.java:671)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:958)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:543)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.loadTable(MetaDataEndpointImpl.java:1210)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:1389)
>   ... 10 more (state=08000,code=101)
> {noformat}



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


[jira] [Comment Edited] (PHOENIX-3424) Backward compatibility failure: 4.8 -> 4.9 upgrade

2016-10-29 Thread James Taylor (JIRA)

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

James Taylor edited comment on PHOENIX-3424 at 10/29/16 7:47 PM:
-

I can repro it, [~samarthjain]. Like [~mujtabachohan] said, it's after upgrade 
happens, if you quit sqlline and then start it again. The upgrade seems to have 
left things in a bad state. I tried this WIP patch which also update the header 
row of SYSTEM.STATS and thought it would fix it, but it's still happening. 
Needs more investigation.

Here's the full stack trace:
{code}
Caused by: org.apache.hadoop.hbase.DoNotRetryIOException: 
org.apache.hadoop.hbase.DoNotRetryIOException: SYSTEM.STATS: Didn't find all 
required key values in 'COLUMN_FAMILY' column metadata row
at 
org.apache.phoenix.util.ServerUtil.createIOException(ServerUtil.java:87)
at 
org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:1581)
at 
org.apache.phoenix.coprocessor.generated.MetaDataProtos$MetaDataService.callMethod(MetaDataProtos.java:16282)
at 
org.apache.hadoop.hbase.regionserver.HRegion.execService(HRegion.java:7815)
at 
org.apache.hadoop.hbase.regionserver.RSRpcServices.execServiceOnRegion(RSRpcServices.java:1986)
at 
org.apache.hadoop.hbase.regionserver.RSRpcServices.execService(RSRpcServices.java:1968)
at 
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:33652)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2178)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:112)
at 
org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:133)
at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:108)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Didn't find all required key values 
in 'COLUMN_FAMILY' column metadata row
at 
org.apache.phoenix.coprocessor.MetaDataEndpointImpl.addColumnToTable(MetaDataEndpointImpl.java:670)
at 
org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:956)
at 
org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:542)
at 
org.apache.phoenix.coprocessor.MetaDataEndpointImpl.loadTable(MetaDataEndpointImpl.java:1208)
at 
org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:1406)
{code}


was (Author: jamestaylor):
I can repro it, [~samarthjain]. Like [~mujtabachohan] said, it's after upgrade 
happens, if you quit sqlline and then start it again. The upgrade seems to have 
left things in a bad state. I tried this WIP patch which also update the header 
row of SYSTEM.STATS and thought it would fix it, but it's still happening. 
Needs more investigation.

Here's the full stack trace:
{code}
Error: ERROR 2007 (INT09): Outdated jars. The following servers require an 
updated phoenix.jar to be put in the classpath of HBase: 
region=SYSTEM.CATALOG,,1477760052644.cf6f4c865587882d1e3b8487a42bb70e., 
hostname=10.0.0.3,55327,1477761049001, seqNum=27 (state=INT09,code=2007)
java.sql.SQLException: ERROR 2007 (INT09): Outdated jars. The following servers 
require an updated phoenix.jar to be put in the classpath of HBase: 
region=SYSTEM.CATALOG,,1477760052644.cf6f4c865587882d1e3b8487a42bb70e., 
hostname=10.0.0.3,55327,1477761049001, seqNum=27
at 
org.apache.phoenix.exception.SQLExceptionCode$Factory$1.newException(SQLExceptionCode.java:464)
at 
org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:150)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.checkClientServerCompatibility(ConnectionQueryServicesImpl.java:1252)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.ensureTableCreated(ConnectionQueryServicesImpl.java:1087)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.createTable(ConnectionQueryServicesImpl.java:1409)
at 
org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:2275)
at 
org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:939)
at 
org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:211)
at 
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:358)
at 
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:341)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at 
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:339)
at 
org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1492)
at 

[jira] [Updated] (PHOENIX-3424) Backward compatibility failure: 4.8 -> 4.9 upgrade

2016-10-29 Thread James Taylor (JIRA)

 [ 
https://issues.apache.org/jira/browse/PHOENIX-3424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Taylor updated PHOENIX-3424:
--
Attachment: PHOENIX-3424_wip.patch

I can repro it, [~samarthjain]. Like [~mujtabachohan] said, it's after upgrade 
happens, if you quit sqlline and then start it again. The upgrade seems to have 
left things in a bad state. I tried this WIP patch which also update the header 
row of SYSTEM.STATS and thought it would fix it, but it's still happening. 
Needs more investigation.

Here's the full stack trace:
{code}
Error: ERROR 2007 (INT09): Outdated jars. The following servers require an 
updated phoenix.jar to be put in the classpath of HBase: 
region=SYSTEM.CATALOG,,1477760052644.cf6f4c865587882d1e3b8487a42bb70e., 
hostname=10.0.0.3,55327,1477761049001, seqNum=27 (state=INT09,code=2007)
java.sql.SQLException: ERROR 2007 (INT09): Outdated jars. The following servers 
require an updated phoenix.jar to be put in the classpath of HBase: 
region=SYSTEM.CATALOG,,1477760052644.cf6f4c865587882d1e3b8487a42bb70e., 
hostname=10.0.0.3,55327,1477761049001, seqNum=27
at 
org.apache.phoenix.exception.SQLExceptionCode$Factory$1.newException(SQLExceptionCode.java:464)
at 
org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:150)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.checkClientServerCompatibility(ConnectionQueryServicesImpl.java:1252)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.ensureTableCreated(ConnectionQueryServicesImpl.java:1087)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.createTable(ConnectionQueryServicesImpl.java:1409)
at 
org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:2275)
at 
org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:939)
at 
org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:211)
at 
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:358)
at 
org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:341)
at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
at 
org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:339)
at 
org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1492)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl$13.call(ConnectionQueryServicesImpl.java:2416)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl$13.call(ConnectionQueryServicesImpl.java:2364)
at 
org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:76)
at 
org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:2364)
{code}

> Backward compatibility failure: 4.8 -> 4.9 upgrade
> --
>
> Key: PHOENIX-3424
> URL: https://issues.apache.org/jira/browse/PHOENIX-3424
> Project: Phoenix
>  Issue Type: Bug
>Reporter: Mujtaba Chohan
>Assignee: James Taylor
> Fix For: 4.9.0
>
> Attachments: PHOENIX-3424_wip.patch
>
>
> {noformat}
> Caused by: java.lang.IllegalStateException: Didn't find all required key 
> values in 'COLUMN_FAMILY' column metadata row
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.addColumnToTable(MetaDataEndpointImpl.java:671)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:958)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:543)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.loadTable(MetaDataEndpointImpl.java:1210)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:1389)
>   ... 10 more (state=08000,code=101)
> {noformat}



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


[jira] [Updated] (PHOENIX-3424) Backward compatibility failure: 4.8 -> 4.9 upgrade

2016-10-29 Thread James Taylor (JIRA)

 [ 
https://issues.apache.org/jira/browse/PHOENIX-3424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Taylor updated PHOENIX-3424:
--
Fix Version/s: 4.9.0

> Backward compatibility failure: 4.8 -> 4.9 upgrade
> --
>
> Key: PHOENIX-3424
> URL: https://issues.apache.org/jira/browse/PHOENIX-3424
> Project: Phoenix
>  Issue Type: Bug
>Reporter: Mujtaba Chohan
>Assignee: James Taylor
> Fix For: 4.9.0
>
>
> {noformat}
> Caused by: java.lang.IllegalStateException: Didn't find all required key 
> values in 'COLUMN_FAMILY' column metadata row
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.addColumnToTable(MetaDataEndpointImpl.java:671)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:958)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:543)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.loadTable(MetaDataEndpointImpl.java:1210)
>   at 
> org.apache.phoenix.coprocessor.MetaDataEndpointImpl.createTable(MetaDataEndpointImpl.java:1389)
>   ... 10 more (state=08000,code=101)
> {noformat}



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


[jira] [Resolved] (PHOENIX-3242) Support UDF in Phoenix-Calcite Integration

2016-10-29 Thread Rajeshbabu Chintaguntla (JIRA)

 [ 
https://issues.apache.org/jira/browse/PHOENIX-3242?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rajeshbabu Chintaguntla resolved PHOENIX-3242.
--
Resolution: Fixed

Pushed rebased patch. Thanks [~maryannxue].

> Support UDF in Phoenix-Calcite Integration
> --
>
> Key: PHOENIX-3242
> URL: https://issues.apache.org/jira/browse/PHOENIX-3242
> Project: Phoenix
>  Issue Type: Task
>Reporter: Rajeshbabu Chintaguntla
>Assignee: Rajeshbabu Chintaguntla
>  Labels: calcite
> Attachments: PHOENIX-3242-WIP-2.patch, PHOENIX-3242-wip.patch, 
> PHOENIX-3242_addendum.patch, PHOENIX-3242_select-wip.patch, 
> PHOENIX-3242_v1.patch, PHOENIX-3242_v2.patch, PHOENIX-3242_v3.patch, 
> PHOENIX-3242_v4.patch, PHOENIX-3242_v5.patch, PHOENIX-3242_v6.patch, 
> PHOENIX-3242_v7.patch
>
>




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


[jira] [Commented] (PHOENIX-476) Support declaration of DEFAULT in CREATE statement

2016-10-29 Thread Kevin Liew (JIRA)

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

Kevin Liew commented on PHOENIX-476:


Thanks for the walkthrough James. It was a good overview of the Phoenix 
codebase and feature-set. 

I created PHOENIX-3425 as a follow-up for stateful default values.

> Support declaration of DEFAULT in CREATE statement
> --
>
> Key: PHOENIX-476
> URL: https://issues.apache.org/jira/browse/PHOENIX-476
> Project: Phoenix
>  Issue Type: Task
>Affects Versions: 3.0-Release
>Reporter: James Taylor
>Assignee: Kevin Liew
>  Labels: enhancement
> Fix For: 4.9.0
>
> Attachments: PHOENIX-476.10.patch, PHOENIX-476.11.patch, 
> PHOENIX-476.12.patch, PHOENIX-476.2.patch, PHOENIX-476.3.patch, 
> PHOENIX-476.4.patch, PHOENIX-476.5.patch, PHOENIX-476.6.patch, 
> PHOENIX-476.7.patch, PHOENIX-476.8.patch, PHOENIX-476.9.patch, 
> PHOENIX-476.patch
>
>
> Support the declaration of a default value in the CREATE TABLE/VIEW statement 
> like this:
> CREATE TABLE Persons (
> Pid int NOT NULL PRIMARY KEY,
> LastName varchar(255) NOT NULL,
> FirstName varchar(255),
> Address varchar(255),
> City varchar(255) DEFAULT 'Sandnes'
> )
> To implement this, we'd need to:
> 1. add a new DEFAULT_VALUE key value column in SYSTEM.TABLE and pass through 
> the value when the table is created (in MetaDataClient).
> 2. always set NULLABLE to ResultSetMetaData.columnNoNulls if a default value 
> is present, since the column will never be null.
> 3. add a getDefaultValue() accessor in PColumn
> 4.  for a row key column, during UPSERT use the default value if no value was 
> specified for that column. This could be done in the PTableImpl.newKey method.
> 5.  for a key value column with a default value, we can get away without 
> incurring any storage cost. Although a little bit of extra effort than if we 
> persisted the default value on an UPSERT for key value columns, this approach 
> has the benefit of not incurring any storage cost for a default value.
> * serialize any default value into KeyValueColumnExpression
> * in the evaluate method of KeyValueColumnExpression, conditionally use 
> the default value if the column value is not present. If doing partial 
> evaluation, you should not yet return the default value, as we may not have 
> encountered the the KeyValue for the column yet (since a filter evaluates 
> each time it sees each KeyValue, and there may be more than one KeyValue 
> referenced in the expression). Partial evaluation is determined by calling 
> Tuple.isImmutable(), where false means it is NOT doing partial evaluation, 
> while true means it is.
> * modify EvaluateOnCompletionVisitor by adding a visitor method for 
> RowKeyColumnExpression and KeyValueColumnExpression to set 
> evaluateOnCompletion to true if they have a default value specified. This 
> will cause filter evaluation to execute one final time after all KeyValues 
> for a row have been seen, since it's at this time we know we should use the 
> default value.



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


[jira] [Created] (PHOENIX-3425) Support stateful DEFAULT for column values

2016-10-29 Thread Kevin Liew (JIRA)
Kevin Liew created PHOENIX-3425:
---

 Summary: Support stateful DEFAULT for column values
 Key: PHOENIX-3425
 URL: https://issues.apache.org/jira/browse/PHOENIX-3425
 Project: Phoenix
  Issue Type: Task
Reporter: Kevin Liew
Assignee: Kevin Liew
Priority: Minor






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