ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dmitriy Pavlov (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (IGNITE-8385) SQL: Allow variable-length values in index leafs
Date Tue, 26 Jun 2018 16:09:32 GMT

     [ https://issues.apache.org/jira/browse/IGNITE-8385?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Dmitriy Pavlov updated IGNITE-8385:
-----------------------------------
    Fix Version/s:     (was: 2.6)
                   2.7

> SQL: Allow variable-length values in index leafs
> ------------------------------------------------
>
>                 Key: IGNITE-8385
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8385
>             Project: Ignite
>          Issue Type: Task
>          Components: sql
>    Affects Versions: 2.4
>            Reporter: Vladimir Ozerov
>            Priority: Major
>              Labels: iep-19, performance
>             Fix For: 2.7
>
>
> Currently we have a restriction that every entry inside a BTree leaf should be of fixed
size. This restriction is artificial and prevents efficient index usage because we have to
choose so-called {{inline size}} for every index manually. This is OK for fixed-size numeric
types. But this could be a problem for varlen types such as {{VARCHAR}} because in some cases
we cannot fit the whole value and have to fallback to data page lookup. In other cases we
may pick too pessimistic inline size value and index space would be wasted. 
> What we need to do is to allow arbitrary item size in index pages. In this case we would
be able to inline all necessary values into index pages in most cases. 
> Please pay attention that we may still met page overflow in case too long data types
are used. To mitigate this we should:
> 1) Implement IGNITE-6055 first so that we can distinguish between limited and unlimited
data types.
> 2) Unlimited data types should be inlined only partially
> 3) We need to have special handling for too long rows (probably just re-use existing
logic with minimal adjustments)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message