[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user JamesRTaylor commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48887938 @ramkrish86 - would you have time to check this in to master? We can add this minor check in a follow up commit. @chrajeshbabu - will an alternate patch be required for the 4.0 branch? 4.0 should match master, but it seems to be ever so slightly different. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user JamesRTaylor commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14873050 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java --- @@ -238,7 +240,12 @@ private void doColumnProjectionOptimization(StatementContext context, Scan scan, minMaxRange = SaltingUtil.addSaltByte(split.getLowerRange(), minMaxRange); split = split.intersect(minMaxRange); } -} +} else if (localIndex) { --- End diff -- In a follow up commit, we should look to commonize the above salting logic with this logic for local indexes. It's doing the same thing, it's just adding one byte for the salt byte while the local indexing is adding the region start key. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14060544#comment-14060544 ] ASF GitHub Bot commented on PHOENIX-933: Github user JamesRTaylor commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14873050 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java --- @@ -238,7 +240,12 @@ private void doColumnProjectionOptimization(StatementContext context, Scan scan, minMaxRange = SaltingUtil.addSaltByte(split.getLowerRange(), minMaxRange); split = split.intersect(minMaxRange); } -} +} else if (localIndex) { --- End diff -- In a follow up commit, we should look to commonize the above salting logic with this logic for local indexes. It's doing the same thing, it's just adding one byte for the salt byte while the local indexing is adding the region start key. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14060832#comment-14060832 ] James Taylor commented on PHOENIX-933: -- [~anoop.hbase] - would you mind committing this? The pull is here: https://github.com/apache/phoenix/pull/3 Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (PHOENIX-1002) Add support for % operator
[ https://issues.apache.org/jira/browse/PHOENIX-1002?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kyle Buzsaki updated PHOENIX-1002: -- Attachment: PHOENIX-1002_5_3-0.patch Looks like the conflict was just a whitespace issue. 3.0 compatible patch attached. Add support for % operator -- Key: PHOENIX-1002 URL: https://issues.apache.org/jira/browse/PHOENIX-1002 Project: Phoenix Issue Type: New Feature Reporter: Thomas D'Silva Assignee: Kyle Buzsaki Fix For: 5.0.0, 3.1, 4.1 Attachments: PHOENIX-1002.patch, PHOENIX-1002_2.patch, PHOENIX-1002_3.patch, PHOENIX-1002_4.patch, PHOENIX-1002_5.patch, PHOENIX-1002_5_3-0.patch Supporting the % operator would allow using sequences to generate IDs that are less than a maximum number. CREATE SEQUENCE foo.bar SELECT ((NEXT VALUE FOR foo.bar)%1000) -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14060868#comment-14060868 ] ASF GitHub Bot commented on PHOENIX-933: Github user ramkrish86 commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48927901 I think I don't have write access to do this merge. Only those with write access to this repository can merge pull requests. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-1002) Add support for % operator
[ https://issues.apache.org/jira/browse/PHOENIX-1002?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14060899#comment-14060899 ] Anoop Sam John commented on PHOENIX-1002: - Thanks. Going to commit now.. Add support for % operator -- Key: PHOENIX-1002 URL: https://issues.apache.org/jira/browse/PHOENIX-1002 Project: Phoenix Issue Type: New Feature Reporter: Thomas D'Silva Assignee: Kyle Buzsaki Fix For: 5.0.0, 3.1, 4.1 Attachments: PHOENIX-1002.patch, PHOENIX-1002_2.patch, PHOENIX-1002_3.patch, PHOENIX-1002_4.patch, PHOENIX-1002_5.patch, PHOENIX-1002_5_3-0.patch Supporting the % operator would allow using sequences to generate IDs that are less than a maximum number. CREATE SEQUENCE foo.bar SELECT ((NEXT VALUE FOR foo.bar)%1000) -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-1002) Add support for % operator
[ https://issues.apache.org/jira/browse/PHOENIX-1002?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14060957#comment-14060957 ] Hudson commented on PHOENIX-1002: - FAILURE: Integrated in Phoenix | Master | Hadoop1 #270 (See [https://builds.apache.org/job/Phoenix-master-hadoop1/270/]) PHOENIX-1002 Add support for % operator.(Kyle Buzsaki) (anoopsamjohn: rev b12ba69b300c84a692584935640cd984e2501f9b) * phoenix-core/src/main/java/org/apache/phoenix/parse/ModulusParseNode.java * phoenix-core/src/main/java/org/apache/phoenix/parse/UnsupportedAllParseNodeVisitor.java * phoenix-core/src/main/java/org/apache/phoenix/parse/ParseNodeFactory.java * phoenix-core/src/main/java/org/apache/phoenix/parse/ParseNodeVisitor.java * phoenix-core/src/main/java/org/apache/phoenix/expression/ExpressionType.java * phoenix-core/src/main/antlr3/PhoenixSQL.g * phoenix-core/src/main/java/org/apache/phoenix/expression/ModulusExpression.java * phoenix-core/src/main/java/org/apache/phoenix/compile/ExpressionCompiler.java * phoenix-core/src/main/java/org/apache/phoenix/parse/TraverseNoParseNodeVisitor.java * phoenix-core/src/main/java/org/apache/phoenix/parse/TraverseAllParseNodeVisitor.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/ArithmeticQueryIT.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/ModulusExpressionIT.java * phoenix-core/src/main/java/org/apache/phoenix/parse/ParseNodeRewriter.java * phoenix-core/src/main/java/org/apache/phoenix/parse/StatelessTraverseAllParseNodeVisitor.java Add support for % operator -- Key: PHOENIX-1002 URL: https://issues.apache.org/jira/browse/PHOENIX-1002 Project: Phoenix Issue Type: New Feature Reporter: Thomas D'Silva Assignee: Kyle Buzsaki Fix For: 5.0.0, 3.1, 4.1 Attachments: PHOENIX-1002.patch, PHOENIX-1002_2.patch, PHOENIX-1002_3.patch, PHOENIX-1002_4.patch, PHOENIX-1002_5.patch, PHOENIX-1002_5_3-0.patch Supporting the % operator would allow using sequences to generate IDs that are less than a maximum number. CREATE SEQUENCE foo.bar SELECT ((NEXT VALUE FOR foo.bar)%1000) -- This message was sent by Atlassian JIRA (v6.2#6252)
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user JamesRTaylor commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48941536 @ramkrish86 - just add a .patch to the url for the pull request and you'll have the patch file to apply against the normal/updatable repo. The github repo is read-only for everyone. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Comment Edited] (PHOENIX-938) Use higher priority queue for index updates to prevent deadlock
[ https://issues.apache.org/jira/browse/PHOENIX-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061037#comment-14061037 ] Jesse Yates edited comment on PHOENIX-938 at 7/14/14 7:04 PM: -- Well, as its a new addition, support 0.98.4 as the first version doesn't seem like that big of an issue - basically, add these configs and roll your cluster with the new hbase + phoenix. And it would be nice to drop all the 0.98.3 specific code of out of the patch (which creates its own RpcExecutor, reflection, etc). Not worth all the extra work to make it work with the inheritance heirarchy was (Author: jesse_yates): Well, as its a new addition, support 0.98.4 as the first version doesn't seem like that big of an issue - basically, add these configs and roll your cluster with the new hbase + phoenix. And it would be nice to drop all the 0.98.3 specific code of out of the patch (which creates its own RpcExecutor*, reflection, etc). Not worth all the extra work to make it work with the inheritance heirarchy Use higher priority queue for index updates to prevent deadlock --- Key: PHOENIX-938 URL: https://issues.apache.org/jira/browse/PHOENIX-938 Project: Phoenix Issue Type: Bug Affects Versions: 4.0.0, 4.1 Reporter: James Taylor Assignee: Jesse Yates Fix For: 5.0.0, 4.1 Attachments: PHOENIX-938-master-v3.patch, phoenix-938-4.0-v0.patch, phoenix-938-master-v0.patch, phoenix-938-master-v1.patch, phoenix-938-master-v2.patch With our current global secondary indexing solution, a batched Put of table data causes a RS to do a batch Put to other RSs. This has the potential to lead to a deadlock if all RS are overloaded and unable to process the pending batched Put. To prevent this, we should use a higher priority queue to submit these Puts so that they're always processed before other Puts. This will prevent the potential for a deadlock under high load. Note that this will likely require some HBase 0.98 code changes and would not be feasible to implement for HBase 0.94. -- This message was sent by Atlassian JIRA (v6.2#6252)
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user chrajeshbabu commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48945719 bq. Just add the check to disable creating local indexes on a table with immutable rows and then let's check this in. Changed pull request to disallow local index on immutable rows and added some test cases. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061041#comment-14061041 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48945719 bq. Just add the check to disable creating local indexes on a table with immutable rows and then let's check this in. Changed pull request to disallow local index on immutable rows and added some test cases. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061053#comment-14061053 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14897250 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/schema/MetaDataClient.java --- @@ -568,8 +629,13 @@ public MutationState createIndex(CreateIndexStatement statement, byte[][] splits allPkColumns.add(new PairColumnName, SortOrder(colName, col.getSortOrder())); columnDefs.add(FACTORY.columnDef(colName, dataType.getSqlTypeName(), col.isNullable(), col.getMaxLength(), col.getScale(), false, SortOrder.getDefault())); } -if (dataTable.getType() == PTableType.VIEW dataTable.getViewType() != ViewType.MAPPED) { -allocateViewIndexId = true; +/* + * Allocate an index ID in two circumstances: + * 1) for a local index, as all local indexes will reside in the same HBase table + * 2) for a view on an index. + */ +if (statement.getIndexType() == IndexType.LOCAL || (dataTable.getType() == PTableType.VIEW dataTable.getViewType() != ViewType.MAPPED)) { +allocateIndexId = true; --- End diff -- Done. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-938) Use higher priority queue for index updates to prevent deadlock
[ https://issues.apache.org/jira/browse/PHOENIX-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061040#comment-14061040 ] Andrew Purtell commented on PHOENIX-938: Ok. If you think of anything else that needs to go in here before the .4 release is official, please let me know. We can pull the RC for further work if needed. Use higher priority queue for index updates to prevent deadlock --- Key: PHOENIX-938 URL: https://issues.apache.org/jira/browse/PHOENIX-938 Project: Phoenix Issue Type: Bug Affects Versions: 4.0.0, 4.1 Reporter: James Taylor Assignee: Jesse Yates Fix For: 5.0.0, 4.1 Attachments: PHOENIX-938-master-v3.patch, phoenix-938-4.0-v0.patch, phoenix-938-master-v0.patch, phoenix-938-master-v1.patch, phoenix-938-master-v2.patch With our current global secondary indexing solution, a batched Put of table data causes a RS to do a batch Put to other RSs. This has the potential to lead to a deadlock if all RS are overloaded and unable to process the pending batched Put. To prevent this, we should use a higher priority queue to submit these Puts so that they're always processed before other Puts. This will prevent the potential for a deadlock under high load. Note that this will likely require some HBase 0.98 code changes and would not be feasible to implement for HBase 0.94. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061060#comment-14061060 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14897277 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/compile/IndexStatementRewriter.java --- @@ -96,6 +96,11 @@ public ParseNode visit(ColumnParseNode node) throws SQLException { String indexColName = IndexUtil.getIndexColumnName(dataCol); // Same alias as before, but use the index column name instead of the data column name +// ColumnParseNode cannot be resolved. When this occurs, add the dataColRef to a list --- End diff -- Removed. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14897879 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/expression/ExpressionType.java --- @@ -169,6 +170,7 @@ SQLViewTypeFunction(SQLViewTypeFunction.class), ExternalSqlTypeIdFunction(ExternalSqlTypeIdFunction.class), ConvertTimezoneFunction(ConvertTimezoneFunction.class), +SQLIndexTypeFunction(SQLIndexTypeFunction.class), --- End diff -- done. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061074#comment-14061074 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14897862 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java --- @@ -1134,8 +1135,15 @@ public static SelectStatement optimize(PhoenixStatement statement, SelectStateme ListOrderByNode orderBy = tableRef.equals(orderByTableRef) ? select.getOrderBy() : null; SelectStatement stmt = getSubqueryForOptimizedPlan(select.getHint(), table.getDynamicColumns(), tableRef, join.getColumnRefs(), table.getPreFiltersCombined(), groupBy, orderBy, table.isWildCardSelect()); QueryPlan plan = statement.getConnection().getQueryServices().getOptimizer().optimize(statement, stmt); +boolean localIndex = plan.getContext().getCurrentTable().getTable().getIndexType()==IndexType.LOCAL; if (!plan.getTableRef().equals(tableRef)) { -replacement.put(tableRef, plan.getTableRef()); +// Use local index plan only when all the columns to project are available in index. --- End diff -- This change is not required in the master branch James. In local-index branch join queries have failed with ColumnNotFoundException with local indexes when join query has columns other than index. So I have added the check. Currently join back from data table is not supported in join queries. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061075#comment-14061075 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14897879 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/expression/ExpressionType.java --- @@ -169,6 +170,7 @@ SQLViewTypeFunction(SQLViewTypeFunction.class), ExternalSqlTypeIdFunction(ExternalSqlTypeIdFunction.class), ConvertTimezoneFunction(ConvertTimezoneFunction.class), +SQLIndexTypeFunction(SQLIndexTypeFunction.class), --- End diff -- done. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14898287 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/DefaultParallelIteratorRegionSplitter.java --- @@ -140,7 +142,14 @@ public boolean apply(HRegionLocation location) { // distributed across regions, using this scheme compensates for regions that // have more rows than others, by applying tighter splits and therefore spawning // off more scans over the overloaded regions. -int splitsPerRegion = regions.size() = targetConcurrency ? 1 : (regions.size() targetConcurrency / 2 ? maxConcurrency : targetConcurrency) / regions.size(); +PTable table = tableRef.getTable(); --- End diff -- bq. why do we need this to be different for local indexes? Seems like we could run parallel scans over part of each region just like we do with other scans, no? Index table rows have region start key as prefix so even if we split region key ranges into multiple and scan parallelly,only first scanner gives the results and remaining all the scanners just return nothing. So number of splits of local index region setting to 1. if we want to start multiple scanners for local index into multiple parts then we need to split the scan ranges into multiple. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14898383 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/DefaultParallelIteratorRegionSplitter.java --- @@ -140,7 +142,14 @@ public boolean apply(HRegionLocation location) { // distributed across regions, using this scheme compensates for regions that // have more rows than others, by applying tighter splits and therefore spawning // off more scans over the overloaded regions. -int splitsPerRegion = regions.size() = targetConcurrency ? 1 : (regions.size() targetConcurrency / 2 ? maxConcurrency : targetConcurrency) / regions.size(); +PTable table = tableRef.getTable(); --- End diff -- bq. getSplitsPerRegion method to ParallelIteratorRegionSplitter so we can move this special case to your new implementation for local indexes. Current patch added getSplitsPerRegion method to ParallelIteratorRegionSplitter and returning one in LocalIndexParallelIteratorRegionSplitter and removed the changes in other splitter. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061091#comment-14061091 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14898383 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/DefaultParallelIteratorRegionSplitter.java --- @@ -140,7 +142,14 @@ public boolean apply(HRegionLocation location) { // distributed across regions, using this scheme compensates for regions that // have more rows than others, by applying tighter splits and therefore spawning // off more scans over the overloaded regions. -int splitsPerRegion = regions.size() = targetConcurrency ? 1 : (regions.size() targetConcurrency / 2 ? maxConcurrency : targetConcurrency) / regions.size(); +PTable table = tableRef.getTable(); --- End diff -- bq. getSplitsPerRegion method to ParallelIteratorRegionSplitter so we can move this special case to your new implementation for local indexes. Current patch added getSplitsPerRegion method to ParallelIteratorRegionSplitter and returning one in LocalIndexParallelIteratorRegionSplitter and removed the changes in other splitter. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[GitHub] phoenix pull request: PHOENIX-933 Local index support to Phoenix
Github user chrajeshbabu commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48949296 Resolved the conflicts after PHOENIX-1002 also. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061105#comment-14061105 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48949296 Resolved the conflicts after PHOENIX-1002 also. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061103#comment-14061103 ] ASF GitHub Bot commented on PHOENIX-933: Github user chrajeshbabu commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14898689 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java --- @@ -238,7 +240,12 @@ private void doColumnProjectionOptimization(StatementContext context, Scan scan, minMaxRange = SaltingUtil.addSaltByte(split.getLowerRange(), minMaxRange); split = split.intersect(minMaxRange); } -} +} else if (localIndex) { --- End diff -- one main difference is there between the two methods James. in addSaltByte if keyrange upper or lower bound is unbound we don't set salting byte. in case of local index if both start or end keys are unbound then only we don't prefix the bytes. So not able to commonize both. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061116#comment-14061116 ] ASF GitHub Bot commented on PHOENIX-933: Github user JamesRTaylor commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14899221 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java --- @@ -238,7 +240,12 @@ private void doColumnProjectionOptimization(StatementContext context, Scan scan, minMaxRange = SaltingUtil.addSaltByte(split.getLowerRange(), minMaxRange); split = split.intersect(minMaxRange); } -} +} else if (localIndex) { --- End diff -- Let's discuss in a separate JIRA. It's not a big deal. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061127#comment-14061127 ] ASF GitHub Bot commented on PHOENIX-933: Github user JamesRTaylor commented on a diff in the pull request: https://github.com/apache/phoenix/pull/3#discussion_r14899559 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/iterate/DefaultParallelIteratorRegionSplitter.java --- @@ -140,7 +142,14 @@ public boolean apply(HRegionLocation location) { // distributed across regions, using this scheme compensates for regions that // have more rows than others, by applying tighter splits and therefore spawning // off more scans over the overloaded regions. -int splitsPerRegion = regions.size() = targetConcurrency ? 1 : (regions.size() targetConcurrency / 2 ? maxConcurrency : targetConcurrency) / regions.size(); +PTable table = tableRef.getTable(); --- End diff -- That's what the splitsPerRegion variable and subsequent logic in ParallelIterators does - it creates additional split points within the range so that multiple scans get run over a single region. We'd want to prefix each of these with the same start region key. I'll open a separate JIRA for this too. It's not a big deal - most of the time the parallelization slots would be used up by having to do a scan in each region anyway. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (PHOENIX-1084) Use same split logic for intra region splits over local indexes
James Taylor created PHOENIX-1084: - Summary: Use same split logic for intra region splits over local indexes Key: PHOENIX-1084 URL: https://issues.apache.org/jira/browse/PHOENIX-1084 Project: Phoenix Issue Type: Sub-task Reporter: rajeshbabu Assignee: rajeshbabu We currently have two separate classes that represent a column family/column qualifier combo: ColumnReference and ReferencingColumn. I believe the only difference is that ReferencingColumn allows a backing byte array to be used with an offset and length. Since ColumnReference already has an ImmutableBytesPtr we can add a constructor that takes two offsets and lengths for the family and qualifier and do a bit of minor refactoring (removing the family and qualifier member variables and just use the familyPtr and qualifierPtr ones exclusivly) so that we don't have two classes for the same thing: {code} public class ColumnReference implements ComparableColumnReference { public ColumnReference(byte[] family, int familyOffset, int familyLength, byte[] qualifier, int qualifierOffset, int qualiferLength) { this.familyPtr = new ImmutableBytesPtr(family, familyOffset, familyLength); this.qualifierPtr = new ImmutableBytesPtr(qualifier, qualifierOffset, qualifierLength); this.hashCode = calcHashCode(familyPtr.get(), qualifierPtr.get()); } {code} Another useful addition would be to implement Writable so we don't duplicate the serialization logic. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (PHOENIX-1085) Commonize logic for adding salt byte and adding region start key in ParallelIterators
James Taylor created PHOENIX-1085: - Summary: Commonize logic for adding salt byte and adding region start key in ParallelIterators Key: PHOENIX-1085 URL: https://issues.apache.org/jira/browse/PHOENIX-1085 Project: Phoenix Issue Type: Sub-task Reporter: James Taylor Priority: Minor -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (PHOENIX-1086) Document local indexes
James Taylor created PHOENIX-1086: - Summary: Document local indexes Key: PHOENIX-1086 URL: https://issues.apache.org/jira/browse/PHOENIX-1086 Project: Phoenix Issue Type: Sub-task Reporter: James Taylor Assignee: rajeshbabu Priority: Minor Update our website with information on local indexes: http://phoenix.apache.org/secondary_indexing.html. The Phoenix website lives in svn and is authored, in general, using markdown. See the build.txt for more information on how to build/update. The information should be user level - explain how to create a local index (i.e. just by adding the LOCAL keyword). Then explain the performance characteristics/tradeoffs. The architectural information is useful too, but more for advanced users. Maybe we can have a link from the user level doc to the architectural doc? -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (PHOENIX-1085) Commonize logic for adding salt byte and adding region start key in ParallelIterators
[ https://issues.apache.org/jira/browse/PHOENIX-1085?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] James Taylor updated PHOENIX-1085: -- Description: See https://github.com/apache/phoenix/pull/3#discussion_r14899221 Commonize logic for adding salt byte and adding region start key in ParallelIterators - Key: PHOENIX-1085 URL: https://issues.apache.org/jira/browse/PHOENIX-1085 Project: Phoenix Issue Type: Sub-task Reporter: James Taylor Priority: Minor See https://github.com/apache/phoenix/pull/3#discussion_r14899221 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (PHOENIX-1084) Use same split logic for intra region splits over local indexes
[ https://issues.apache.org/jira/browse/PHOENIX-1084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] James Taylor updated PHOENIX-1084: -- Priority: Minor (was: Major) Use same split logic for intra region splits over local indexes --- Key: PHOENIX-1084 URL: https://issues.apache.org/jira/browse/PHOENIX-1084 Project: Phoenix Issue Type: Sub-task Reporter: rajeshbabu Assignee: rajeshbabu Priority: Minor See https://github.com/apache/phoenix/pull/3#discussion_r14899559 -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (PHOENIX-1060) Replace ReferencingColumn with ColumnReference
[ https://issues.apache.org/jira/browse/PHOENIX-1060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] James Taylor updated PHOENIX-1060: -- Priority: Minor (was: Major) Replace ReferencingColumn with ColumnReference -- Key: PHOENIX-1060 URL: https://issues.apache.org/jira/browse/PHOENIX-1060 Project: Phoenix Issue Type: Sub-task Reporter: rajeshbabu Assignee: rajeshbabu Priority: Minor We currently have two separate classes that represent a column family/column qualifier combo: ColumnReference and ReferencingColumn. I believe the only difference is that ReferencingColumn allows a backing byte array to be used with an offset and length. Since ColumnReference already has an ImmutableBytesPtr we can add a constructor that takes two offsets and lengths for the family and qualifier and do a bit of minor refactoring (removing the family and qualifier member variables and just use the familyPtr and qualifierPtr ones exclusivly) so that we don't have two classes for the same thing: {code} public class ColumnReference implements ComparableColumnReference { public ColumnReference(byte[] family, int familyOffset, int familyLength, byte[] qualifier, int qualifierOffset, int qualiferLength) { this.familyPtr = new ImmutableBytesPtr(family, familyOffset, familyLength); this.qualifierPtr = new ImmutableBytesPtr(qualifier, qualifierOffset, qualifierLength); this.hashCode = calcHashCode(familyPtr.get(), qualifierPtr.get()); } {code} Another useful addition would be to implement Writable so we don't duplicate the serialization logic. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] rajeshbabu updated PHOENIX-933: --- Attachment: PHOENIX-933.patch Here is the patch for master branch. I will upload 4.0 patch tomorrow. Thank you very much for your help and reviews [~jamestaylor]. Thanks [~ramkrishna],[~anoop.hbase]. Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Attachments: PHOENIX-933.patch Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-938) Use higher priority queue for index updates to prevent deadlock
[ https://issues.apache.org/jira/browse/PHOENIX-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061177#comment-14061177 ] Ted Yu commented on PHOENIX-938: bq. +Class.forName(org.apache.hadoop.hbase.ipc.RpcExector); Looks like there was a typo above: RpcExector Use higher priority queue for index updates to prevent deadlock --- Key: PHOENIX-938 URL: https://issues.apache.org/jira/browse/PHOENIX-938 Project: Phoenix Issue Type: Bug Affects Versions: 4.0.0, 4.1 Reporter: James Taylor Assignee: Jesse Yates Fix For: 5.0.0, 4.1 Attachments: PHOENIX-938-master-v3.patch, phoenix-938-4.0-v0.patch, phoenix-938-master-v0.patch, phoenix-938-master-v1.patch, phoenix-938-master-v2.patch With our current global secondary indexing solution, a batched Put of table data causes a RS to do a batch Put to other RSs. This has the potential to lead to a deadlock if all RS are overloaded and unable to process the pending batched Put. To prevent this, we should use a higher priority queue to submit these Puts so that they're always processed before other Puts. This will prevent the potential for a deadlock under high load. Note that this will likely require some HBase 0.98 code changes and would not be feasible to implement for HBase 0.94. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (PHOENIX-1087) Support joining back to data table from local index table for join queries
James Taylor created PHOENIX-1087: - Summary: Support joining back to data table from local index table for join queries Key: PHOENIX-1087 URL: https://issues.apache.org/jira/browse/PHOENIX-1087 Project: Phoenix Issue Type: Sub-task Reporter: James Taylor Assignee: rajeshbabu See https://github.com/apache/phoenix/pull/3#discussion_r14897862. [~maryannxue] can likely give you some help/pointers for this one. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-539) Implement parallel scanner that does not spool to disk
[ https://issues.apache.org/jira/browse/PHOENIX-539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061350#comment-14061350 ] James Taylor commented on PHOENIX-539: -- Any select query that returns more rows than the batch size for one of the parallelized scans. Implement parallel scanner that does not spool to disk -- Key: PHOENIX-539 URL: https://issues.apache.org/jira/browse/PHOENIX-539 Project: Phoenix Issue Type: Task Reporter: James Taylor Assignee: Gabriel Reid Fix For: 5.0.0, 3.1, 4.1 Attachments: PHOENIX-539.1.patch, PHOENIX-539.patch In scenarios where a LIMIT is not present on a non aggregate query that will return a lot of results, Phoenix spools the results to disk. This is less than ideal in these situations. @larsh has created a very good and relatively simple implementation that is queue based to replace this. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-938) Use higher priority queue for index updates to prevent deadlock
[ https://issues.apache.org/jira/browse/PHOENIX-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061358#comment-14061358 ] Jesse Yates commented on PHOENIX-938: - and linking this to HBASE-11513 so we an use the BalancedRpcExecutor in Phoenix as well, rather than having to make our own. Use higher priority queue for index updates to prevent deadlock --- Key: PHOENIX-938 URL: https://issues.apache.org/jira/browse/PHOENIX-938 Project: Phoenix Issue Type: Bug Affects Versions: 4.0.0, 4.1 Reporter: James Taylor Assignee: Jesse Yates Fix For: 5.0.0, 4.1 Attachments: PHOENIX-938-master-v3.patch, phoenix-938-4.0-v0.patch, phoenix-938-master-v0.patch, phoenix-938-master-v1.patch, phoenix-938-master-v2.patch, phoenix-938-master-v4.patch With our current global secondary indexing solution, a batched Put of table data causes a RS to do a batch Put to other RSs. This has the potential to lead to a deadlock if all RS are overloaded and unable to process the pending batched Put. To prevent this, we should use a higher priority queue to submit these Puts so that they're always processed before other Puts. This will prevent the potential for a deadlock under high load. Note that this will likely require some HBase 0.98 code changes and would not be feasible to implement for HBase 0.94. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061653#comment-14061653 ] ramkrishna.s.vasudevan commented on PHOENIX-933: Anyway to edit the message? Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Assignee: rajeshbabu Attachments: PHOENIX-933.patch Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061659#comment-14061659 ] Hudson commented on PHOENIX-933: FAILURE: Integrated in Phoenix | Master | Hadoop1 #271 (See [https://builds.apache.org/job/Phoenix-master-hadoop1/271/]) PHOENIX-933 Local index support to Phoenix (Ram) (ramkrishna: rev 247ac8eee8ca604ca1616ba4bcf91fec6475ea88) * phoenix-core/src/main/java/org/apache/phoenix/query/QueryConstants.java * phoenix-core/src/main/java/org/apache/phoenix/index/IndexMaintainer.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/index/LocalIndexIT.java * phoenix-core/src/main/java/org/apache/phoenix/expression/visitor/RowKeyExpressionVisitor.java * phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIteratorRegionSplitter.java * phoenix-core/src/main/java/org/apache/phoenix/compile/CreateIndexCompiler.java * phoenix-core/src/it/java/org/apache/phoenix/hbase/index/balancer/TestIndexLoadBalancer.java * phoenix-core/src/test/java/org/apache/phoenix/query/BaseTest.java * phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixDatabaseMetaData.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/BaseScannerRegionObserver.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/AlterTableIT.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java * phoenix-core/src/main/java/org/apache/phoenix/hbase/index/balancer/IndexLoadBalancer.java * phoenix-core/src/main/java/org/apache/phoenix/iterate/LocalIndexParallelIteratorRegionSplitter.java * phoenix-core/src/main/java/org/apache/phoenix/expression/RowKeyColumnExpression.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/DeleteIT.java * phoenix-core/src/main/java/org/apache/phoenix/expression/ExpressionType.java * phoenix-core/src/main/antlr3/PhoenixSQL.g * phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexSaltedIT.java * phoenix-core/src/main/java/org/apache/phoenix/join/TupleProjector.java * phoenix-core/src/main/java/org/apache/phoenix/index/PhoenixIndexCodec.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/generated/PTableProtos.java * phoenix-core/src/main/java/org/apache/phoenix/util/IndexUtil.java * phoenix-core/src/main/java/org/apache/phoenix/execute/BasicQueryPlan.java * phoenix-core/src/main/java/org/apache/phoenix/parse/ParseNodeFactory.java * phoenix-core/src/main/java/org/apache/phoenix/hbase/index/master/IndexMasterObserver.java * phoenix-core/src/main/java/org/apache/phoenix/execute/ScanPlan.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataProtocol.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseViewIT.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/UngroupedAggregateRegionObserver.java * phoenix-core/src/main/java/org/apache/phoenix/compile/DeleteCompiler.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/ScanRegionObserver.java * phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java * phoenix-core/src/main/java/org/apache/phoenix/coprocessor/GroupedAggregateRegionObserver.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/index/MutableIndexIT.java * phoenix-core/src/main/java/org/apache/phoenix/compile/ExpressionCompiler.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexIT.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/ViewIT.java * phoenix-core/src/main/java/org/apache/phoenix/expression/KeyValueColumnExpression.java * phoenix-core/src/main/java/org/apache/phoenix/hbase/index/util/IndexManagementUtil.java * phoenix-core/src/main/java/org/apache/phoenix/schema/PTableImpl.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/SaltedViewIT.java * phoenix-core/src/main/java/org/apache/phoenix/schema/MetaDataClient.java * phoenix-core/src/main/java/org/apache/phoenix/schema/LocalIndexDataColumnRef.java * phoenix-core/src/main/java/org/apache/phoenix/compile/WhereCompiler.java * phoenix-core/src/test/java/org/apache/phoenix/index/IndexMaintainerTest.java * phoenix-core/src/main/java/org/apache/phoenix/parse/CreateIndexStatement.java * phoenix-core/src/it/java/org/apache/phoenix/end2end/HashJoinIT.java * phoenix-core/src/main/java/org/apache/phoenix/schema/ColumnRef.java * phoenix-core/src/main/java/org/apache/phoenix/filter/SkipScanFilter.java * phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java * phoenix-core/src/main/java/org/apache/phoenix/hbase/index/IndexRegionSplitPolicy.java * phoenix-core/src/main/java/org/apache/phoenix/exception/SQLExceptionCode.java * phoenix-core/src/main/java/org/apache/phoenix/iterate/DefaultParallelIteratorRegionSplitter.java * phoenix-core/src/main/java/org/apache/phoenix/parse/ParseNodeRewriter.java *
[jira] [Commented] (PHOENIX-933) Local index support to Phoenix
[ https://issues.apache.org/jira/browse/PHOENIX-933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14061670#comment-14061670 ] ASF GitHub Bot commented on PHOENIX-933: Github user ramkrish86 commented on the pull request: https://github.com/apache/phoenix/pull/3#issuecomment-48991061 bq. just add a .patch to the url for the pull request and you'll have the patch file to apply against the normal/updatable repo That's nice. I tried it, it works. :) Local index support to Phoenix -- Key: PHOENIX-933 URL: https://issues.apache.org/jira/browse/PHOENIX-933 Project: Phoenix Issue Type: New Feature Reporter: rajeshbabu Assignee: rajeshbabu Attachments: PHOENIX-933.patch Hindex(https://github.com/Huawei-Hadoop/hindex) provides local indexing support to HBase. It stores region level index in a separate table, and co-locates the user and index table regions with a custom load balancer. See http://goo.gl/phkhwC and http://goo.gl/EswlxC for more information. This JIRA addresses the local indexing solution integration to phoenix. -- This message was sent by Atlassian JIRA (v6.2#6252)