You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Till (JIRA)" <ji...@apache.org> on 2019/04/10 18:02:01 UTC

[jira] [Updated] (ASTERIXDB-2493) In-memory LSM filter is not thread safe

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

Till updated ASTERIXDB-2493:
----------------------------
    Priority: Critical  (was: Major)

> In-memory LSM filter is not thread safe
> ---------------------------------------
>
>                 Key: ASTERIXDB-2493
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-2493
>             Project: Apache AsterixDB
>          Issue Type: Bug
>    Affects Versions: 0.9.4
>            Reporter: Wail Alkowaileet
>            Priority: Critical
>
> To reproduce the issue:
> 1- Setup a cluster with a single NC and a single partition.
> 2- Set a breakpoint at [LSMComponentFilter.java#L71|https://github.com/apache/asterixdb/blob/6b31f73565a3b16e0dd1fce9ea010e640c53ca79/hyracks-fullstack/hyracks/hyracks-storage-am-lsm-common/src/main/java/org/apache/hyracks/storage/am/lsm/common/impls/LSMComponentFilter.java#L71]
> 3- DDL:
> {code:sql}
> DROP DATAVERSE ThreadSafe IF EXISTS;
> CREATE DATAVERSE ThreadSafe;
> USE ThreadSafe;
> CREATE TYPE FilterTestType AS {
>   uid: uuid,
>   created: int
> };
> CREATE DATASET FilterTest(FilterTestType)
> PRIMARY KEY uid AUTOGENERATED WITH FILTER ON created;
> {code}
> 4- Initiate two insert queries:
> {code:sql}
> USE ThreadSafe;
> INSERT INTO FilterTest (
>     {"created": 1}
> )
> INSERT INTO FilterTest (
>     {"created": 0}
> )
> {code}
> 5- Let the insert with "created = 0" to update the minTuple (L79)
> 6- Now, let the insert with "created = 1" to update minTuple
> 7- Do the same for the max.
> After (7) both min and max should equal to 1
> 8- Flush the component:
>  [http://localhost:19002/connector?dataverseName=ThreadSafe&datasetName=FilterTest]
> 9- Execute search query:
> {code:sql}
> USE ThreadSafe;
> SELECT *
> FROM FilterTest
> WHERE created = 0;
> {code}
> The query returns an empty result



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