)]}'
{
  "commit": "753fbaf11a5567915d9eaaa9e07ee1a93674c44e",
  "tree": "0cf00bdb35cac120e15ad5f7e0f205580d17893e",
  "parents": [
    "5fd922dfd4361e2ec87e6824633188c027e92898"
  ],
  "author": {
    "name": "Han-Wen Nienhuys",
    "email": "hanwen@google.com",
    "time": "Tue Jan 21 19:06:30 2020 +0100"
  },
  "committer": {
    "name": "Matthias Sohn",
    "email": "matthias.sohn@sap.com",
    "time": "Wed Feb 12 23:08:20 2020 +0100"
  },
  "message": "Simplify ReftableCompactor\n\nThe ReftableCompactor supported a byteLimit, but this is currently\nunused. The FileReftableStack has a more sophisticated strategy that\namortizes compaction costs.\n\nRename min/maxUpdateIndex to reflogExpire{Min,Max}UpdateIndex to\nreflect their purpose  more accurately.\n\nSince reflogs are generally pruned chronologically (oldest entries are\nexpired first), one can only prune entries on full compaction, so they\nshould not be set by default.\n\nRephrase the function Reader#minUpdateIndex and maxUpdateIndex. These\nvars are documented to affect log entries, but semantically, they are\nabout ref entries. Since ref entries have their timestamps\ndelta-compressed, it is important for the min/maxUpdateIndex values to\nbe coherent between different tables.\n\nThe logical timestamps for log entries do not have to be coherent in\ndifferent tables, as the timestamps of a log entry is part of the key.\nFor example, a table written at update index 20 may contain a tombstone\nlog entry at timestamp 1.\n\nTherefore, we set ReftableWriter\u0027s min/maxUpdateIndex from the merged\ntables we are compacting, rather than from the compaction settings\n(which should only control reflog expiry.)\n\nThe previous behavior could drop log entries erroneously, especially\nin the presence of tombstone log entries. Unfortunately, testing this\nproperly requires both an API for adding log tombstones, and a more\nrefined API for controlling automatic compaction. Hence, no test.\n\nChange-Id: I2f4eb7866f607fddd0629809e8e61f0b9097717f\nSigned-off-by: Han-Wen Nienhuys \u003chanwen@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9a7f2409517c3a1d95ed13d15b19d6223a24d3c6",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/reftable/ReftableCompactorTest.java",
      "new_id": "0947dd210850abaa8964d9f350e08e8426a32ba0",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/reftable/ReftableCompactorTest.java"
    },
    {
      "type": "modify",
      "old_id": "cc52bfb719945a373dc92f3ddfc7203afc7b3fab",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/FileReftableStack.java",
      "new_id": "7abd1fb2823e4a7f8ea7e80c32f74de0b59109c7",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/FileReftableStack.java"
    },
    {
      "type": "modify",
      "old_id": "0144453cd77360997b2a454388b861f173355cbc",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/MergedReftable.java",
      "new_id": "d272d09f008dd0df2dbb6bfe0d4afa6e80f7f176",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/MergedReftable.java"
    },
    {
      "type": "modify",
      "old_id": "8a8a14375a16963056f7151d28531f12e7abf59e",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/Reftable.java",
      "new_id": "a7e8252b48b8a0d402af631f38da799b5504020b",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/Reftable.java"
    },
    {
      "type": "modify",
      "old_id": "c73c245be523f8fd0e5310d3988c7c77fa3f4691",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableCompactor.java",
      "new_id": "a586d42de6c7d6a3a4c89c16ce9b972672b9608d",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableCompactor.java"
    },
    {
      "type": "modify",
      "old_id": "14b821a1ed03472e90ff189f212cbcafbe30989a",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableReader.java",
      "new_id": "fef5fa57c6b1027b97e1e0799e6f6f50c397d86a",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableReader.java"
    }
  ]
}
