[
https://issues.apache.org/jira/browse/PHOENIX-4382?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16297892#comment-16297892
]
Vincent Poon commented on PHOENIX-4382:
---------------------------------------
[~jamestaylor] to answer your questions
- I don't think it matters what the prior or following fields are. For any
variable length field in an immutable table, you should see the problem
- In the old scheme, we don't write the separator byte for fixed length
columns. And for variable length, we only write the separator byte when the
column is null
- The space optimization works by serializing the separator byte, along with
the count of the # of nulls. So for a single null, it'd be something like [0,1]
- Correct, the server would have to be upgraded before the client.
I'll try to update the description/summary to provide more clarity. We can
also update the documentation on the phoenix website on the Storage Formats
page, to provide a warning about which values would be incorrect in the older
versions.
> Upsert of some big values not correct for immutable tables
> ----------------------------------------------------------
>
> Key: PHOENIX-4382
> URL: https://issues.apache.org/jira/browse/PHOENIX-4382
> Project: Phoenix
> Issue Type: Bug
> Affects Versions: 4.14.0
> Reporter: Vincent Poon
> Assignee: Vincent Poon
> Attachments: PHOENIX-4382.v1.master.patch,
> PHOENIX-4382.v2.master.patch, UpsertBigValuesIT.java
>
>
> For immutable tables, upsert of some values like Short.MAX_VALUE results in a
> null value in query resultsets. Mutable tables are not affected. I tried
> with BigInt and got the same problem.
> For Short, the breaking point seems to be 32512. Numbers smaller than that
> are fine (until you get closer to Short.MIN_VALUE...)
> See attached test - testShort() , testBigInt()
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)