[ 
https://issues.apache.org/jira/browse/PHOENIX-3685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15884095#comment-15884095
 ] 

James Taylor commented on PHOENIX-3685:
---------------------------------------

That sounds like the root cause, [~tdsilva]. Is it easy to fix? I didn't see it 
happening for transactional tables.

> Extra DeleteFamily marker in non tx index table when setting covered column 
> to null
> -----------------------------------------------------------------------------------
>
>                 Key: PHOENIX-3685
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3685
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: Thomas D'Silva
>         Attachments: PHOENIX-3685-test.patch
>
>
> Based on some testing (see patch), I noticed a mysterious DeleteFamily marker 
> when a covered column is set to null. This could potentially delete an actual 
> row with that row key, so it's bad.
> Here's a raw scan dump taken after the MutableIndexIT.testCoveredColumns() 
> test:
> {code}
> ************ dumping IDX_T000002;hconnection-0x211e75ea **************
> \x00a/0:/1487356752097/DeleteFamily/vlen=0/seqid=0 value = 
> x\x00a/0:0:V2/1487356752231/Put/vlen=1/seqid=0 value = 4
> x\x00a/0:0:V2/1487356752225/Put/vlen=1/seqid=0 value = 4
> x\x00a/0:0:V2/1487356752202/Put/vlen=1/seqid=0 value = 3
> x\x00a/0:0:V2/1487356752149/DeleteColumn/vlen=0/seqid=0 value = 
> x\x00a/0:0:V2/1487356752097/Put/vlen=1/seqid=0 value = 1
> x\x00a/0:_0/1487356752231/Put/vlen=2/seqid=0 value = _0
> x\x00a/0:_0/1487356752225/Put/vlen=2/seqid=0 value = _0
> x\x00a/0:_0/1487356752202/Put/vlen=2/seqid=0 value = _0
> x\x00a/0:_0/1487356752149/Put/vlen=2/seqid=0 value = _0
> x\x00a/0:_0/1487356752097/Put/vlen=2/seqid=0 value = _0
> -----------------------------------------------
> {code}
> That first DeleteFamily marker shouldn't be there. This occurs for both 
> global and local indexes, but not for transactional tables. A further 
> optimization would be not to issue the first Put since the value behind it is 
> the same.
> On the plus side, we're not issuing DeleteFamily markers when only the 
> covered column is being set which is good.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to