Re: [VOTE] Release of Apache Phoenix 4.12.0 RC0

2017-10-06 Thread lars hofhansl
+1
- built from source- loaded a few million rows into Phoenix- tried some 
queries- nothing undue in the logs- killed a region server while the client was 
in the middle of a large update (UPSERT ... SELECT ...)- all recovered nicely


  From: James Taylor 
 To: "dev@phoenix.apache.org"  
 Sent: Wednesday, October 4, 2017 12:46 AM
 Subject: [VOTE] Release of Apache Phoenix 4.12.0 RC0
   
Hello Everyone,

This is a call for a vote on Apache Phoenix 4.12.0 RC0. This is the next
minor release of Phoenix 4, compatible with Apache HBase 0.98, 1.1, 1.2, &
1.3. The release includes both a source-only release and a convenience
binary release for each supported HBase version.

This release has feature parity with supported HBase versions and includes
the following improvements:
- Improved scalability of global mutable secondary index
- 100+ bug fixes (the majority around secondary indexing)
- Index Scrutiny tool [1]
- Stabilization of unit tests
- Support for table sampling [2]
- Support for APPROX_COUNT_DISTINCT aggregate function [3]

The source tarball, including signatures, digests, etc can be found at:
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-0.98-rc0/src/
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-1.1-rc0/src/
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-1.2-rc0/src/
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-1.3-rc0/src/

The binary artifacts can be found at:
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-0.98-rc0/bin/
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-1.1-rc0/bin/
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-1.2-rc0/bin/
https://dist.apache.org/repos/dist/dev/phoenix/apache-phoenix-v4.12.0-HBase-1.3-rc0/bin/

For a complete list of changes, see:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12315120&version=12340844

Artifacts are signed with my "CODE SIGNING KEY": 308FBEE06088BE0F

KEYS file available here:
https://dist.apache.org/repos/dist/dev/phoenix/KEYS

The hash and tag to be voted upon:
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=commit;h=13a7f97b49704642d67481c58a118a68c2e4c2e5
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=tag;h=refs/tags/v4.12.0-HBase-0.98-rc0
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=commit;h=e40bbfff1150e56e1ecb7cd22c49cee298496c2b
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=tag;h=refs/tags/v4.12.0-HBase-1.1-rc0
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=commit;h=d79dd50ff732f2673e1414d970cd4742e2c135de
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=tag;h=refs/tags/v4.12.0-HBase-1.2-rc0
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=commit;h=f0bc4cdb5bbf96b316c78cc816400b04f63e911b
https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=tag;h=refs/tags/v4.12.0-HBase-1.3-rc0

Vote will be open for at least 72 hours. Please vote:

[ ] +1 approve
[ ] +0 no opinion
[ ] -1 disapprove (and reason why)

Thanks,
The Apache Phoenix Team

[1] https://phoenix.apache.org/secondary_indexing.html#Index_Scrutiny_Tool
[2] https://phoenix.apache.org/tablesample.html
[3] https://phoenix.apache.org/language/functions.html#approx_count_distinct


   

[jira] [Commented] (PHOENIX-3556) Remove usage of com.google.common.collect.Iterators.emptyIterator()

2017-10-06 Thread Chinmay Kulkarni (JIRA)

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

Chinmay Kulkarni commented on PHOENIX-3556:
---

lgtm for master branch.
For branch 4.11-HBase-1.3, do not remove the imports for _TimUnit_ and 
_TimeoutException_ i.e. 

Revert the change:

{quote}phoenix-core/src/main/java/org/apache/phoenix/execute/MutationState.java
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;{quote}

> Remove usage of com.google.common.collect.Iterators.emptyIterator()
> ---
>
> Key: PHOENIX-3556
> URL: https://issues.apache.org/jira/browse/PHOENIX-3556
> Project: Phoenix
>  Issue Type: Bug
>Affects Versions: 4.5.2
> Environment: MacOs, Phoenix 4.5.2-HBase-0.98, Guava 20.0
>Reporter: Bo Gao
>Assignee: Thomas D'Silva
>Priority: Critical
> Fix For: 4.13.0
>
> Attachments: PHOENIX-3556.patch
>
>
> I am working on a project with Google ads-lib latest version 2.22.0(Dec, 
> 2016), and it requires Guava version 20.0(Oct, 2016). My phoneix-core version 
> is 4.5.2-HBase-0.98. I got the following exception when trying to get Phoenix 
> connection:
> {noformat}
> java.lang.IllegalAccessError: tried to access method 
> com.google.common.collect.Iterators.emptyIterator()Lcom/google/common/collect/UnmodifiableIterator;
>  from class org.apache.phoenix.schema.MetaDataClient
>   at 
> org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1501)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:751) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:186)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:315) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:307) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:305)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1364)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1927)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1896)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1896)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:180)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:132)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:151) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at java.sql.DriverManager.getConnection(DriverManager.java:664) 
> ~[na:1.8.0_65]
>   at java.sql.DriverManager.getConnection(DriverManager.java:247) 
> ~[na:1.8.0_65]
> {noformat}
> The issue is that from Guava 20.0 Google changed the visibility of 
> com.google.common.collect.Iterators#emptyIterator() from public to default as 
> it was announced earlier to be deprecated.
> I checked several versions of phoenix-core from old to new, looks like all 
> versions are using com.google.common.collect.Iterators#emptyIterator() in 
> org.apache.phoenix.schema.MetaDataClient. So the affected versions should be 
> all.
> Better to replace the usage of emptyIterator() as 
> https://google.github.io/guava/releases/18.0/api/docs/com/google/common/collect/Iterators.html#emptyIterator()
>  recommends.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Comment Edited] (PHOENIX-3556) Remove usage of com.google.common.collect.Iterators.emptyIterator()

2017-10-06 Thread Chinmay Kulkarni (JIRA)

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

Chinmay Kulkarni edited comment on PHOENIX-3556 at 10/6/17 9:49 PM:


[~tdsilva] lgtm for master branch.
For branch 4.11-HBase-1.3, do not remove the imports for _TimUnit_ and 
_TimeoutException_ i.e. 

Revert the change:

{quote}phoenix-core/src/main/java/org/apache/phoenix/execute/MutationState.java
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;{quote}


was (Author: ckulkarni):
lgtm for master branch.
For branch 4.11-HBase-1.3, do not remove the imports for _TimUnit_ and 
_TimeoutException_ i.e. 

Revert the change:

{quote}phoenix-core/src/main/java/org/apache/phoenix/execute/MutationState.java
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;{quote}

> Remove usage of com.google.common.collect.Iterators.emptyIterator()
> ---
>
> Key: PHOENIX-3556
> URL: https://issues.apache.org/jira/browse/PHOENIX-3556
> Project: Phoenix
>  Issue Type: Bug
>Affects Versions: 4.5.2
> Environment: MacOs, Phoenix 4.5.2-HBase-0.98, Guava 20.0
>Reporter: Bo Gao
>Assignee: Thomas D'Silva
>Priority: Critical
> Fix For: 4.13.0
>
> Attachments: PHOENIX-3556.patch
>
>
> I am working on a project with Google ads-lib latest version 2.22.0(Dec, 
> 2016), and it requires Guava version 20.0(Oct, 2016). My phoneix-core version 
> is 4.5.2-HBase-0.98. I got the following exception when trying to get Phoenix 
> connection:
> {noformat}
> java.lang.IllegalAccessError: tried to access method 
> com.google.common.collect.Iterators.emptyIterator()Lcom/google/common/collect/UnmodifiableIterator;
>  from class org.apache.phoenix.schema.MetaDataClient
>   at 
> org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1501)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:751) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:186)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:315) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:307) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:305)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1364)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1927)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1896)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1896)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:180)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:132)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:151) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at java.sql.DriverManager.getConnection(DriverManager.java:664) 
> ~[na:1.8.0_65]
>   at java.sql.DriverManager.getConnection(DriverManager.java:247) 
> ~[na:1.8.0_65]
> {noformat}
> The issue is that from Guava 20.0 Google changed the visibility of 
> com.google.common.collect.Iterators#emptyIterator() from public to default as 
> it was announced earlier to be deprecated.
> I checked several versions of phoenix-core from old to new, looks like all 
> versions are using com.google.common.collect.Iterators#emptyIterator() in 
> org.apache.phoenix.schema.MetaDataClient. So the affected versions should be 
> all.
> Bett

[jira] [Comment Edited] (PHOENIX-3556) Remove usage of com.google.common.collect.Iterators.emptyIterator()

2017-10-06 Thread Chinmay Kulkarni (JIRA)

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

Chinmay Kulkarni edited comment on PHOENIX-3556 at 10/6/17 9:50 PM:


[~tdsilva] lgtm for master branch.
For branch 4.11-HBase-1.3, do not remove the imports for _TimeUnit_ and 
_TimeoutException_ i.e. 

Revert the change:

{quote}phoenix-core/src/main/java/org/apache/phoenix/execute/MutationState.java
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;{quote}


was (Author: ckulkarni):
[~tdsilva] lgtm for master branch.
For branch 4.11-HBase-1.3, do not remove the imports for _TimUnit_ and 
_TimeoutException_ i.e. 

Revert the change:

{quote}phoenix-core/src/main/java/org/apache/phoenix/execute/MutationState.java
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;{quote}

> Remove usage of com.google.common.collect.Iterators.emptyIterator()
> ---
>
> Key: PHOENIX-3556
> URL: https://issues.apache.org/jira/browse/PHOENIX-3556
> Project: Phoenix
>  Issue Type: Bug
>Affects Versions: 4.5.2
> Environment: MacOs, Phoenix 4.5.2-HBase-0.98, Guava 20.0
>Reporter: Bo Gao
>Assignee: Thomas D'Silva
>Priority: Critical
> Fix For: 4.13.0
>
> Attachments: PHOENIX-3556.patch
>
>
> I am working on a project with Google ads-lib latest version 2.22.0(Dec, 
> 2016), and it requires Guava version 20.0(Oct, 2016). My phoneix-core version 
> is 4.5.2-HBase-0.98. I got the following exception when trying to get Phoenix 
> connection:
> {noformat}
> java.lang.IllegalAccessError: tried to access method 
> com.google.common.collect.Iterators.emptyIterator()Lcom/google/common/collect/UnmodifiableIterator;
>  from class org.apache.phoenix.schema.MetaDataClient
>   at 
> org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1501)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:751) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:186)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:315) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:307) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:305)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1364)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1927)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl$12.call(ConnectionQueryServicesImpl.java:1896)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1896)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:180)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:132)
>  ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at 
> org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:151) 
> ~[phoenix-core-4.5.2-HBase-0.98.jar:4.5.2-HBase-0.98]
>   at java.sql.DriverManager.getConnection(DriverManager.java:664) 
> ~[na:1.8.0_65]
>   at java.sql.DriverManager.getConnection(DriverManager.java:247) 
> ~[na:1.8.0_65]
> {noformat}
> The issue is that from Guava 20.0 Google changed the visibility of 
> com.google.common.collect.Iterators#emptyIterator() from public to default as 
> it was announced earlier to be deprecated.
> I checked several versions of phoenix-core from old to new, looks like all 
> versions are using com.google.common.collect.Iterators#emptyIterator() in 
> org.apache.phoenix.schema.MetaDataClient. So the affected versions should be 
>

[jira] [Created] (PHOENIX-4279) PhoenixMRJobSubmitter not submitting index rebuild jobs

2017-10-06 Thread Vincent Poon (JIRA)
Vincent Poon created PHOENIX-4279:
-

 Summary: PhoenixMRJobSubmitter not submitting index rebuild jobs
 Key: PHOENIX-4279
 URL: https://issues.apache.org/jira/browse/PHOENIX-4279
 Project: Phoenix
  Issue Type: Bug
Affects Versions: 4.13.0
Reporter: Vincent Poon


We had an index that was disabled.  We tried to rebuild it with "ALTER INDEX 
my_index ON my_table REBUILD ASYNC".  That index_state was updated to 'b' , but 
PhoenixMRJobSubmitter didn't submit rebuild jobs.  The getCandidateJobs query 
didn't return any results.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)