Jaanai Zhang created PHOENIX-4847:
-------------------------------------

             Summary: Index tables will produce dirty data when use BukloadTool 
                 Key: PHOENIX-4847
                 URL: https://issues.apache.org/jira/browse/PHOENIX-4847
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 5.0.0, 4.14.0, 4.13.0, 4.12.0
            Reporter: Jaanai Zhang


Index tables are inconsistent with data tables when occurs update primary key 
of data tables with CSVBulkload tool.

CSV data:
{code:csv}
k1,v1_1,1
k2,v2_2,2
k1,v1_1,3
{code}

Imported table 
{code:sql}
DROP TABLE IF EXISTS TABLE1;
CREATE TABLE TABLE1 (ID VARCHAR NOT NULL PRIMARY KEY, V1 VARCHAR, V2 BIGINT)
SALT_BUCKETS = 8,
UPDATE_CACHE_FREQUENCY = 120000;

CREATE INDEX V1_IDX on TABLE1(V1) include(v2);
CREATE INDEX V2_IDX on TABLE1(V2) include(v1);

upsert into TABLE1 values('k1','v1_1',1);
upsert into TABLE1 values('k2','v2_2',2);
upsert into TABLE1 values('k1','v1_1',3);
{code}

The following is query results after executing `CsvBulkLoadTool`

{code:sql}
0: jdbc:phoenix:hb-bp18j460748jq41v0-002.hbas> select * from table1;
+-----+-------+-----+
| ID  |  V1   | V2  |
+-----+-------+-----+
| k2  | v2_2  | 2   |
| k1  | v1_1  | 3   |
+-----+-------+-----+
2 rows selected (0.066 seconds)
0: jdbc:phoenix:hb-bp18j460748jq41v0-002.hbas>  select * from V1_IDX;
+-------+------+-------+
| 0:V1  | :ID  | 0:V2  |
+-------+------+-------+
| v1_1  | k1   | 3     |
| v2_2  | k2   | 2     |
+-------+------+-------+
2 rows selected (0.074 seconds)
0: jdbc:phoenix:hb-bp18j460748jq41v0-002.hbas>  select * from V2_IDX;
+-------+------+-------+
| 0:V2  | :ID  | 0:V1  |
+-------+------+-------+
| 1     | k1   | v1_1  |
| 3     | k1   | v1_1  |
| 2     | k2   | v2_2  |
+-------+------+-------+
3 rows selected (0.062 seconds)
{code}




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

Reply via email to