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

Tomek Rękawek commented on OAK-4069:
------------------------------------

First, benchmark results:
{{noformat}}
# ConcurrentWriteReadTest          C     min     10%     50%     90%     max    
   N
Oak-Mongo (readconcern=majority)   1      78     108     184     492    1430    
1061
Oak-Mongo (readconcern=local)      1      87     110     193     491    1244    
1029
{{noformat}}

I used the [local replica|https://github.com/trekawek/global-mongo] set with 
latency=0. Benchmark invocation:

{{noformat}}
$ java -Druntime=300 -jar oak-run/target/oak-run-1.6-SNAPSHOT.jar benchmark 
ConcurrentWriteReadTest Oak-Mongo \
  --mongouri 
'mongodb://mongo1:27017,mongo2:27018,mongo3:27019/oak?w=majority&readPreference=nearest&readconcernlevel=majority'
{{noformat}}

> Use read concern majority when connected to a replica set
> ---------------------------------------------------------
>
>                 Key: OAK-4069
>                 URL: https://issues.apache.org/jira/browse/OAK-4069
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mongomk
>            Reporter: Tomek Rękawek
>            Assignee: Tomek Rękawek
>              Labels: resilience
>             Fix For: 1.6, 1.5.16
>
>         Attachments: OAK-4069-2.patch, OAK-4069.patch
>
>
> Mongo 3.2 introduces new query option: {{readConcern}}. It allows to read 
> only these changes that have been already committed to the majority of 
> secondary instances.
> It prevents stale reads - a situation in which a change has been committed on 
> the primary (and read from it), but due to the network partition a new 
> primary is elected and the change is rolled back.
> We should use this new option (together with {{w:majority}} implemented in 
> OAK-3554) when running Oak on MongoDB replica set.
> References:
> * [Jepsen: MongoDB stale 
> reads|https://aphyr.com/posts/322-jepsen-mongodb-stale-reads]
> * [MongoDB documentation: Read Concern 
> in|https://docs.mongodb.org/manual/reference/read-concern/]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to