)]}'
{
  "commit": "ad474fbfc4d55e0d0d68ecb7279449306778806b",
  "tree": "0e5a6e83ba6ec70f4932698d66aa5944a2dc0967",
  "parents": [
    "0f053870fb799ecb43261f1e47eccdb49b9dd91f"
  ],
  "author": {
    "name": "Edwin Kempin",
    "email": "ekempin@google.com",
    "time": "Thu Sep 18 09:40:50 2025 +0000"
  },
  "committer": {
    "name": "Edwin Kempin",
    "email": "ekempin@google.com",
    "time": "Thu Sep 18 09:40:50 2025 +0000"
  },
  "message": "Drop CodeOwnersInternalServerErrorException\n\nCodeOwnersInternalServerErrorException was added during the rollout of\nthe code-owners feature to recognise issues with the code-owners plugin\nimmediately. It\u0027s thrown for any exception that happens in the\ncode-owners plugin, even if the error is not caused by the code-owners\nplugin, but happens in other Gerrit modules that are used by the\ncode-owners plugin. For example if permissions cannot be evaluated and\nthe PermissionBackend fails with a PermissionBackendException, anywhere\nin Gerrit that would result in a normal \"internal server error\", only if\nthe caller is the code-owners plugin it is a \"code-owners internal\nserver error\". This doesn\u0027t make sense, at least no longer since the\ncode-owners rollout is long done. In retrospect wrapping arbitrary\nexceptions that happen in code that is called from the code-owners\nplugin into CodeOwnersInternalServerErrorException\u0027s caused more\nconfusion than it helped because non-code-owner related errors were\nattributed to the code-owners plugin. Hence dropping this exception now.\nInstead we just use StorageException like in the rest of the Gerrit\ncode.\n\nChange-Id: I77e7e2026de7a6c3a6eccd184fd20993dc81aa22\nSigned-off-by: Edwin Kempin \u003cekempin@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0e4e9e71ee21b8b92dbd953a7153681402b6c62e",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/AbstractFileBasedCodeOwnerBackend.java",
      "new_id": "4837ee0ccd98d81a21bac6ad843ea039332f288d",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/AbstractFileBasedCodeOwnerBackend.java"
    },
    {
      "type": "modify",
      "old_id": "6abc8208cd964d243fcd1129f74bb99e37ea140a",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerApprovalCheck.java",
      "new_id": "afaf7adecebbe1e6a4d6ba0898349726146de41e",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerApprovalCheck.java"
    },
    {
      "type": "modify",
      "old_id": "0fa31e1b198cc49ac1a327f564b48ff98023fffb",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerConfigFileUpdateScanner.java",
      "new_id": "24a8b9f9b372017f5ac0bce890a0c40eeccc8558",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerConfigFileUpdateScanner.java"
    },
    {
      "type": "modify",
      "old_id": "dfd4fee58b351e2698403689e21538ba5c5d1c09",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerConfigHierarchy.java",
      "new_id": "49c06bb104c6ffdb764bd84e2591d083ffbe0ad5",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerConfigHierarchy.java"
    },
    {
      "type": "modify",
      "old_id": "d55ff8f5fccca3f2c8d19aa5eaed9d1deea2d953",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerConfigScanner.java",
      "new_id": "f5356c5b9ed88b683bd151ea2e6a758c24db8419",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerConfigScanner.java"
    },
    {
      "type": "modify",
      "old_id": "07d1c7cdcfacc1fd7a38f2f18d0e55c6004bdc00",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerResolver.java",
      "new_id": "38ce3e02fb3c65e1b77f5a08265afc7cd088430e",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerResolver.java"
    },
    {
      "type": "modify",
      "old_id": "80300d6769ae103544b526ee3c47b127fa87887a",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerSubmitRule.java",
      "new_id": "ac570c09123615b54ee32a8eee1b1de1b7dee90d",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnerSubmitRule.java"
    },
    {
      "type": "modify",
      "old_id": "a96546815338cac1c78d87725e7475db30b099d1",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnersExceptionHook.java",
      "new_id": "bc35a365150b87cfd14c1b96069364fb3190dec5",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnersExceptionHook.java"
    },
    {
      "type": "delete",
      "old_id": "580414aff3c97bed4174b302f9062b95b3cea7a6",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/CodeOwnersInternalServerErrorException.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "b1a38fad29d24264c178e80e7217f5fbcf8f3bb6",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/TransientCodeOwnerConfigCache.java",
      "new_id": "57027730c2eacc42c7aca1e1f46d90fadc3d43ed",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/TransientCodeOwnerConfigCache.java"
    },
    {
      "type": "modify",
      "old_id": "786d3e40068a966c7d06d26a86f0e4dd826a167d",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/backend/config/CodeOwnersPluginProjectConfigSnapshot.java",
      "new_id": "08005b8874aae265291b34545ff8f1324becf07e",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/backend/config/CodeOwnersPluginProjectConfigSnapshot.java"
    },
    {
      "type": "modify",
      "old_id": "0e97a25d1cd790a858b81fea75d80c2841ff0488",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/restapi/AbstractGetCodeOwnersForPath.java",
      "new_id": "bc202da017520f59fca8a052b874d8370f5419ce",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/restapi/AbstractGetCodeOwnersForPath.java"
    },
    {
      "type": "modify",
      "old_id": "4acae29894073b0a48d506e2a2c841a635661fa0",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/validation/CodeOwnerConfigValidator.java",
      "new_id": "91a8c56c831c1af50acb67a13d47950e819332a4",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/validation/CodeOwnerConfigValidator.java"
    },
    {
      "type": "modify",
      "old_id": "049cf11b441dd3ba069827e6104468d001aef2ea",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/plugins/codeowners/validation/SkipCodeOwnerConfigValidationPushOption.java",
      "new_id": "7d4651621325f56d33587bdfa30c29480796f681",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/plugins/codeowners/validation/SkipCodeOwnerConfigValidationPushOption.java"
    },
    {
      "type": "modify",
      "old_id": "f8b21aa111eac70037fb42d6a272bc0c2f2ccf7c",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/plugins/codeowners/acceptance/api/CodeOwnerHasOperandsIT.java",
      "new_id": "4e3e74f2dba216f5d7d70e97e7d4e191e719f7a6",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/plugins/codeowners/acceptance/api/CodeOwnerHasOperandsIT.java"
    },
    {
      "type": "modify",
      "old_id": "52813912155ee90e5e7c8d48cf48c4a56584804a",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/plugins/codeowners/backend/AbstractFileBasedCodeOwnerBackendTest.java",
      "new_id": "a5fb56f5bbbdf5d0652e8bc6598b7d070bf0f786",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/plugins/codeowners/backend/AbstractFileBasedCodeOwnerBackendTest.java"
    },
    {
      "type": "modify",
      "old_id": "08c45f1cb2c3b1b5ef27f869d932baf628d0899f",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/plugins/codeowners/backend/CodeOwnerSubmitRuleTest.java",
      "new_id": "9843fa97a6005db04fb20985b6d669d8bd293092",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/plugins/codeowners/backend/CodeOwnerSubmitRuleTest.java"
    },
    {
      "type": "modify",
      "old_id": "2f6451088a7f869b253a275367ad460013ec81a7",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/plugins/codeowners/backend/CodeOwnersExceptionHookTest.java",
      "new_id": "df8f0cdafafbab712b9ed829da59bf775f73921e",
      "new_mode": 33188,
      "new_path": "javatests/com/google/gerrit/plugins/codeowners/backend/CodeOwnersExceptionHookTest.java"
    },
    {
      "type": "delete",
      "old_id": "ac1e583c4ade17c8a3d00b181d6b5f5f71ace14b",
      "old_mode": 33188,
      "old_path": "javatests/com/google/gerrit/plugins/codeowners/backend/CodeOwnersInternalServerErrorExceptionTest.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    }
  ]
}
