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

Yonatan Gottesman commented on PHOENIX-5090:
--------------------------------------------

Oh ok I see :).

I think the current implementation doesn't work as expected:

1) The client still keeps track of all cells, and only sends the TSO the rows 
for conflict detection.

2) The shadow cells are still written per cell and not per row, so If you read 
a cell in a committed row that wasn't  one of the changed cells it will not 
show up as a committed cell.

3) In this implementation I dont see how a transaction that did a ROW commit 
will conflict with transaction that did CELL commit of one of the cells in that 
row.

Ill review this with [~ohads]

> Discuss: Allow transactional writes without buffering the entire transaction 
> on the client.
> -------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-5090
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5090
>             Project: Phoenix
>          Issue Type: Wish
>            Reporter: Lars Hofhansl
>            Priority: Major
>
> Currently it is not possible execute transactions in Phoenix that are too 
> large to be buffered entirely on the client.
> Both Tephra and Omid support writing uncommitted data to HBase immediately 
> and at full speed. The client still needs to keep tracks of the rows changes 
> for:
> # Conflict detection
> # (for Omid) writing the shadow cells
> I'd like to do some brainstorming here.
> * It should *always* be enough to only hold on to the changed rows (and 
> columns?) only for _conflict resolution_ and free the rest from the client as 
> soon as the uncommitted data is written to HBase.
> * For the shadows cells we need only keep the rows changed, right?
> * There are situations where we can avoid the client site buffering entirely 
> (perhaps only for Tephra) when we declare a table or upsert not to 
> participate in conflict resolution.
> [~tdsilva], [~ohads], [~yonigo], [~jamestaylor], [~vincentpoon], more, better 
> ideas?



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

Reply via email to