)]}'
{
  "commit": "122ba3c50576182bff1bcc27a2e32a3e6d16e0f2",
  "tree": "b7d35939c63bdadaf5370b17f751cfcebb5c773c",
  "parents": [
    "d885c242e973e29c5604c04c08f07f58c6102cf0"
  ],
  "author": {
    "name": "Marc Kupietz",
    "email": "kupietz@ids-mannheim.de",
    "time": "Sun Aug 09 17:13:24 2026 +0200"
  },
  "committer": {
    "name": "Marc Kupietz",
    "email": "kupietz@ids-mannheim.de",
    "time": "Sun Aug 09 17:13:24 2026 +0200"
  },
  "message": "Batch merges into one rocksdb write per batch\n\nInstead of one rocksdb write per increment, the increments of the indexing\nthreads are collected in a WriteBatch and written once per batch. The batch\nsize can be set with COLLOCATORDB_BATCH_SIZE (default 65536).\n\nThe batch is swapped out under the lock and written without it, so the other\nthreads keep counting while the write is in flight. With the lock held across\nthe write, an indexer with several threads was slower than with one, because\nthe threads queued up on the lock and rocksdb never saw concurrent writers\nto batch into one.\n\nA read writes out what is still in the batch first, so it sees every\nincrement that came before it. A cancelled write is repeated as before.\n\nChange-Id: Id534c541a23dfc5b74435c6a88cc001ab6d842b9\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "79d038dacbd4a0420d5fa7794ab2aa29369f7b2a",
      "old_mode": 33188,
      "old_path": "src/collocatordb.cc",
      "new_id": "f327c4bc3c8957c78a82743bd3bed3192bf366ad",
      "new_mode": 33188,
      "new_path": "src/collocatordb.cc"
    }
  ]
}
