You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "Lars Hofhansl (JIRA)" <ji...@apache.org> on 2019/01/18 23:59:00 UTC
[jira] [Commented] (PHOENIX-3547) Promote CATALOG.VIEW_INDEX_ID to
an int
[ https://issues.apache.org/jira/browse/PHOENIX-3547?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16746836#comment-16746836 ]
Lars Hofhansl commented on PHOENIX-3547:
----------------------------------------
We just came across a scenario where this breaks an old (pre-4.15) client.
The index id is now written with an int, the old client tries decode the two byte we have currently as an int and fails.
We've seen this with local indexes and the M/R integration. This is call stack in the old client:
{code}
ParallelIterators(ExplainTable).appendKeyRanges(StringBuilder) line: 297
ParallelIterators(ExplainTable).explain(String, List<String>) line: 127
ParallelIterators(BaseResultIterators).explain(List<String>) line: 1544
RoundRobinResultIterator.explain(List<String>) line: 153
ScanPlan(BaseQueryPlan).getPlanSteps(ResultIterator) line: 524
ScanPlan(BaseQueryPlan).iterator(Map<ImmutableBytesPtr,ServerCache>, ParallelScanGrouper, Scan) line: 372
ScanPlan(BaseQueryPlan).iterator(ParallelScanGrouper, Scan) line: 217
ScanPlan(BaseQueryPlan).iterator(ParallelScanGrouper) line: 212
{code}
> Promote CATALOG.VIEW_INDEX_ID to an int
> ---------------------------------------
>
> Key: PHOENIX-3547
> URL: https://issues.apache.org/jira/browse/PHOENIX-3547
> Project: Phoenix
> Issue Type: New Feature
> Reporter: Jeremy Huffman
> Assignee: Mehdi Salarkia
> Priority: Minor
> Fix For: 4.15.0, 5.1.0
>
> Attachments: 4.x-HBase-0.98.patch, 4.x-HBase-1.1.patch, 4.x-HBase-1.2.patch, 4.x-HBase-1.3.patch, 4.x-HBase-1.4.patch, 4.x-cdh5.11.patch, 4.x-cdh5.12.patch, 4.x-cdh5.13.patch, 4.x-cdh5.14.patch, master-PHOENIX-3547.patch
>
>
> Increase the size of CATALOG.VIEW_INDEX_ID from smallint to int to support a large number of indexed views on a single table.
> Per James: "The code would just need to be tolerant when reading the data if the length is two byte short versus four byte int. At write time, we'd just always write an int."
> See: https://lists.apache.org/thread.html/22849e4fc73452cee3bea763cf6d5af7164dedcb44573ba6b9f452a2@%3Cuser.phoenix.apache.org%3E
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)