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

ASF subversion and git services commented on ASTERIXDB-3212:
------------------------------------------------------------

Commit 4f6da369855ac89f0c0f34c1f10463cf797005bc in asterixdb's branch 
refs/heads/master from Wail Alkowaileet
[ https://gitbox.apache.org/repos/asf?p=asterixdb.git;h=4f6da36985 ]

[MULTIPLE ISSUES] Fixes for handling anti-matters in columnar datasets

- user model changes: no
- storage format changes: no
- interface changes: yes

Details:
- ASTERIXDB-3214: Avoid skipping non-key columns when
  anti-matter was encountered
- ASTERIXDB-3213: Use single PK reader for both the
  cursor and the assembler
- ASTERIXDB-3212: Account for offset sizes for
  variable-length PKs in columnar datasets

Change-Id: If7dec034a2d75c80688523b19be6fdc38f077a65
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17599
Integration-Tests: Jenkins <[email protected]>
Tested-by: Jenkins <[email protected]>
Reviewed-by: Wail Alkowaileet <[email protected]>
Reviewed-by: Murtadha Al Hubail <[email protected]>


> Account for offset sizes for variable-length PKs in columnar datasets
> ---------------------------------------------------------------------
>
>                 Key: ASTERIXDB-3212
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-3212
>             Project: Apache AsterixDB
>          Issue Type: Bug
>          Components: STO - Storage
>    Affects Versions: 0.9.9
>            Reporter: Wail Y. Alkowaileet
>            Assignee: Wail Y. Alkowaileet
>            Priority: Major
>             Fix For: 0.9.9
>
>
> After we moved from encoded PKs to plain PKs, fixed-length vs. 
> variable-length values are now stored differently. For fixed-length PKs 
> (e.g., BIGINT), we store each primary key one after the other. For 
> variable-length PKs (e.g., STRING), we store them as two sub-vectors, one 
> vector is used for the offsets for each PK, whereas the other is used to 
> store the PK value itself.
> When bulk-loading a ColumnBTree, we rely on 
> *AbstractColumnTupleWriter#bytesRequired(ITupleReference)* to get the 
> estimated size to write the PKs of the tuple. For variable length values, we 
> do not count the size of the offsets' sub-vector. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to