[
https://issues.apache.org/jira/browse/PHOENIX-4980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16656125#comment-16656125
]
Vincent Poon commented on PHOENIX-4980:
---------------------------------------
Gnarly bug, but making a little progress. It seems deleted index rows are
getting sent again. Sometimes the timestamp is still covered by the delete,
but sometimes it's newer.
It has to do with deleted cells getting compacted away before the next indexing
run. If i set KEEP_DELETED_CELLS=true , the test passes
So it's likely when we look up the prior row state after a flush, somehow the
missing deleted cells is causing the old index rows to get resent.
> Mismatch in row counts between data and index tables while multiple clients
> try to upsert data
> ----------------------------------------------------------------------------------------------
>
> Key: PHOENIX-4980
> URL: https://issues.apache.org/jira/browse/PHOENIX-4980
> Project: Phoenix
> Issue Type: Bug
> Affects Versions: 4.14.0
> Reporter: Abhishek Talluri
> Priority: Major
> Labels: LocalIndex, globalMutableSecondaryIndex, secondaryIndex
> Attachments: TestSecIndex.java
>
>
> Phoenix table has A,B,C,D,E as its columns and A as the primary key for the
> table.
> CREATE TABLE TEST (A VARCHAR NOT NULL PRIMARY KEY, B VARCHAR, C VARCHAR, D
> VARCHAR , E VARCHAR);
> Global index is built on D & E
> CREATE INDEX TEST_IND on TEST (D,E);
> Client 1 updates A,B,C whereas client 2 updates A,B,D,E
> I used phoenix 5.14.2-1.cdh5.14.2.p0.3 parcel to test this issue. Ran with
> two threads that load data using upserts reading from the csv file. Within 10
> iterations, i could observe the difference in the row counts between data
> table and index table. Attaching the code used to test this behavior. This
> issue also exists in both Global and Local indexes.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)