[
https://issues.apache.org/jira/browse/TEPHRA-99?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16167194#comment-16167194
]
Andreas Neumann commented on TEPHRA-99:
---------------------------------------
You only need to worry about updateTx() if you use checkpointing, which I don't
think you do (it is for writes).
You don't need to do commitTx, because you are only reading, but I would
recommend calling postTxCommit because it removes the transaction from the
TxAware.
By the way, how are you going to commit (or abort) this transaction? Will the
client make a call to close the scan? And how will you do it if the client
never calls that? You are running a risk of generating many invalid
transactions if that happens frequently.
> Make "long running" transactions usable with TransactionContext
> ---------------------------------------------------------------
>
> Key: TEPHRA-99
> URL: https://issues.apache.org/jira/browse/TEPHRA-99
> Project: Tephra
> Issue Type: Improvement
> Components: core
> Reporter: Gary Helmling
> Assignee: Gary Helmling
>
> "Long running" transactions (type == LONG) are supported by the Tephra
> {{TransactionManager}}, but {{TransactionContext}} does not expose any way
> for clients to interact with them. I think this will require a couple
> changes:
> * add a {{startLong()}} method to TransactionContext
> * add a constructor to TransactionContext that takes an existing
> {{Transaction}} instance. Since long running transactions are often used in
> map reduce processing, the process committing the transaction may be
> different from the process that started the transaction. In this situation,
> we need a way to pass the serialized transaction all the way through to the
> other process.
> Regarding map reduce support, we could use additional utilities or support in
> place to make transactions easier to use with map reduce. But this would at
> least serve as a first step.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)