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

ASF GitHub Bot commented on TEPHRA-287:
---------------------------------------

GitHub user JamesRTaylor opened a pull request:

    https://github.com/apache/incubator-tephra/pull/75

    TEPHRA-287 ActionChange.getChangeKey() not implemented correctly

    Based on a new config parameter (defaulting to true), send the old change 
set row key and the new change set row key. This allows a mix of old and new 
clients to still detect conflicts across them. Once it's know that only new 
clients are being used, the config parameter can be switched to false in which 
case only the new change set row key (which correctly embeds separator bytes to 
prevent false positives) will be sent.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/JamesRTaylor/incubator-tephra master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-tephra/pull/75.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #75
    
----
commit 6b6e2303c1a6b7e2392ff63fa17b32879b4be67f
Author: James Taylor <jtaylor@...>
Date:   2018-05-04T22:33:39Z

    TEPHRA-287 ActionChange.getChangeKey() not implemented correctly

----


> ActionChange.getChangeKey() not implemented correctly
> -----------------------------------------------------
>
>                 Key: TEPHRA-287
>                 URL: https://issues.apache.org/jira/browse/TEPHRA-287
>             Project: Tephra
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: James Taylor
>            Priority: Major
>             Fix For: 0.14.0-incubating
>
>         Attachments: TEPHRA-287_v1.patch, TEPHRA-287_v2.patch, 
> TEPHRA-287_v3.patch
>
>
> The ActionChange.getChangeKey() simply concatenates together the row key, 
> family, and qualifier which could lead to incorrect conflicting keys. For 
> example (rowKey='a', family='bc') would conflict with (rowKey='ab', 
> family='c'). A simple fix would be to prefix each part with the byte length 
> of each part.



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

Reply via email to