[ https://issues.apache.org/jira/browse/TEPHRA-247?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16323117#comment-16323117 ]
Andreas Neumann edited comment on TEPHRA-247 at 1/11/18 10:41 PM: ------------------------------------------------------------------ Hi Patrick, I like the idea of caching transaction objects in the coprocessor. However, the difficulty is that the transaction may span multiple region servers. Every time we make a call to HBase, we don't know whether we have sent the transaction to that region server before. The only way to ensure that would be to send it to all regions of a table when the table enters the transaction (in startTx), and similarly, at the end of the transaction, we would have to broadcast the renoveFromCache to all regions. Still, I have a few doubts - what happens on region split? The new region would not have the tx in the cache. - is a transaction truly immutable? Checkpointing a transaction creates a new Transaction object with the same transaction ID but a new write pointer. So I guess the key would have to be the write pointer. Thoughts? was (Author: anew): Hi Patr > Avoid encoding the transaction multiple times > --------------------------------------------- > > Key: TEPHRA-247 > URL: https://issues.apache.org/jira/browse/TEPHRA-247 > Project: Tephra > Issue Type: Improvement > Components: core, manager > Affects Versions: 0.12.0-incubating > Reporter: Andreas Neumann > Assignee: Andreas Neumann > Attachments: design.jpg > > > Currently, the same transaction object is encoded again and again for every > Get performed in HBase. It would be better to cache the encoded transaction > for the duration of the transaction and reuse it, -- This message was sent by Atlassian JIRA (v6.4.14#64029)