We are currently trying to evaluate MongoDB (with wiredTiger) for a project. We using YCSB (yahoo's cloud benchmark tool) as one of the tools for evaluating the performance and scalability. In one of our experiments (with global logging level of 0, and 5 for query, write and storage) we see in the logs that there are approximately 2 times transaction rollbacks than transaction commits. I have attached the log file from one such test session. Our test in ycsb inserts 1 record and then we use workload a (50% reads, 50% writes) that reads and updates the same record 100K times. We have tested this with two versions of MongoDB (3.4.2 and 3.2.11) on baremetal machine with 120GB of RAM and underlying SSDs (in raid 10) and are able to reproduce it.
We use the following parameters in YCSB
bin/ycsb load mongodb -s -threads 1 -P workloads/workloada -P workloadproperty.dat -p "mongodb.url=mongodb://<mongoserver>:27017/ycsb?w=1"
bin/ycsb run mongodb -s -threads 1 -P workloads/workloada -P workloadproperty.dat -p "mongodb.url=mongodb://<mongoserver>:27017/ycsb?w=1"
where workloadproperty.dat contains these two lines