GitHub user shoukunhuai opened a pull request:
https://github.com/apache/activemq-artemis/pull/1747
[WIP] NO-JIRA DISCUSS Replica use operationcontext
This PR is used to discuss using `OperationContext` on backup side.
The original implementation of `ReplicationEndpoint` sends response to
live after journal operation is submitted to executor in `JournalImpl`.
By introduce operation context, we send response after journal operation is
complete.
Since we never sync on backup side, time buffer must be disabled, or the
responses will not be sent until time buffer is full.
Any suggestion is appreciated.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/shoukunhuai/activemq-artemis
replica-use-operationcontext
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/activemq-artemis/pull/1747.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 #1747
----
commit b071cf9f6f566276bcfd810bbc622c743b73ab9f
Author: shoukun <shoukunhuai@...>
Date: 2017-12-28T03:33:13Z
Use operation context on backup side
With operaton context we can send response after
journal is wrote to journal file. Since we always use
noSync, the change to journal file is not forced.
commit af85f3e2513601a5f5255969664ba40c5980d4d2
Author: shoukun <shoukunhuai@...>
Date: 2018-01-03T09:21:01Z
Disable time buffer on backup side
Since we never sync on backup side, time buffer must be disabled.
----
---