[
https://issues.apache.org/jira/browse/IGNITE-13667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Mashenkov updated IGNITE-13667:
--------------------------------------
Description:
When a schema is defined, the key chunk columns and value chunk columns are
sorted so that fixlen columns go first and varlen columns go second, so the
sorted column order differs from the order of the user-defined columns.
We may need a way to keep original columns order, e.g. for SQL, where user
expects "select * from" return columns in user-defined order in "create table"
statement. It may be a simple relocation table which is a permutation of
indices {{[0..n)}}, so that an internal column order for user index {{n}} is
{{relocationTbl[n]}}. Or maybe we could just store column user-defined order
within the column object to use it in Calcite.
NB: the row assembler will still need to access the internal sorted order for
proper row assembly.
was:
When a schema is defined, the key chunk columns and value chunk columns are
sorted so that fixlen columns go first and varlen columns go second, so the
sorted column order differs from the order of the user-defined columns.
We may need a way to keep original columns order, e.g. for SQL, where user
expects "select * from" return columns in user-defined order in "create table"
statement. It may be a simple relocation table which is a permutation of
indices {{[0..n)}}, so that an internal column order for user index {{n}} is
{{relocationTbl[n]}}.
NB: the row assembler will still need to access the internal sorted order for
proper row assembly.
Update:
> Add schema columns mapping from user order to system order
> ----------------------------------------------------------
>
> Key: IGNITE-13667
> URL: https://issues.apache.org/jira/browse/IGNITE-13667
> Project: Ignite
> Issue Type: Improvement
> Reporter: Alexey Goncharuk
> Assignee: Andrey Mashenkov
> Priority: Minor
> Labels: iep-54, ignite-3
> Fix For: 3.0
>
>
> When a schema is defined, the key chunk columns and value chunk columns are
> sorted so that fixlen columns go first and varlen columns go second, so the
> sorted column order differs from the order of the user-defined columns.
> We may need a way to keep original columns order, e.g. for SQL, where user
> expects "select * from" return columns in user-defined order in "create
> table" statement. It may be a simple relocation table which is a permutation
> of indices {{[0..n)}}, so that an internal column order for user index {{n}}
> is {{relocationTbl[n]}}. Or maybe we could just store column user-defined
> order within the column object to use it in Calcite.
> NB: the row assembler will still need to access the internal sorted order for
> proper row assembly.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)