Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-28263

2 times WT rollback_transaction than WT commit_transaction in logs on a single thread YCSB workload

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 3.2.11, 3.4.2
    • Component/s: None
    • Environment:
      Centos 7, MongoDB binaries downloaded from website

      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
      Loading
      ----------
      bin/ycsb load mongodb -s -threads 1 -P workloads/workloada -P workloadproperty.dat -p "mongodb.url=mongodb://<mongoserver>:27017/ycsb?w=1"

      Running
      -----------
      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
      recordcount=1
      operationcount=100000

        1. problemlog.tar.gz
          2.46 MB
          Avinash Vyas

            Assignee:
            milkie@mongodb.com Eric Milkie
            Reporter:
            vyasa Avinash Vyas
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: