)]}'
{
  "commit": "0f8613013f07eab4c23c540849924ea52b4feede",
  "tree": "b64b84bdce4b966bc284d1cf1c1c0aca84357de6",
  "parents": [
    "d7c33bc1a0c0136a38507caa002c58c1629c538c"
  ],
  "author": {
    "name": "Rikard Almgren",
    "email": "rikardal@axis.com",
    "time": "Thu May 21 13:13:41 2026 +0200"
  },
  "committer": {
    "name": "Rikard Almgren",
    "email": "rikardal@axis.com",
    "time": "Tue Sep 08 15:02:15 2026 +0200"
  },
  "message": "Add credit-based flow control for stream consumers\n\nStream consumers had no explicit flow control. During replay, broker\ndelivery could outrun processing and overload downstream systems.\n\nUse creditWhenHalfMessagesProcessed(initialCredits) when building the\nstream consumer. Call context.processed() after each handled message so\ncredits replenish as processing advances.\n\nAdd stream.initialCredits to [stream] configuration. Its default is 1\nand its minimum value is 1. Stream credits permit broker chunks, not\nindividual messages, and chunk sizes vary.\n\nQueue consumers use prefetch 300, allowing up to 300 unacknowledged\ndeliveries. Stream consumers use chunk-based credits, so the values are\nnot directly comparable. The one-credit default keeps the initial stream\nwindow to one chunk while replenishment follows processing progress.\n\nChange-Id: I20f3050c8c6f52d98b82b0f86c5178ec77c53b95\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7ac3059a5a7417fd71637a326e1cf85eaf3f7b60",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/rabbitmq/config/section/Stream.java",
      "new_id": "8b4a9804486aeca17641e4871a6e8be6f43993a2",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/rabbitmq/config/section/Stream.java"
    },
    {
      "type": "modify",
      "old_id": "22806aa725d68530bbf39b24bbbf72f4afd1dbcf",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/rabbitmq/session/type/StreamSubscriberSession.java",
      "new_id": "c022349dcba8454d69952a47fdb87f045371f24b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/rabbitmq/session/type/StreamSubscriberSession.java"
    },
    {
      "type": "modify",
      "old_id": "adbcc600114b949ebc6851f771d48a07b438d0b3",
      "old_mode": 33188,
      "old_path": "src/main/resources/Documentation/config.md",
      "new_id": "8934fc38935d57b5eb4e31eed26ff7121b261583",
      "new_mode": 33188,
      "new_path": "src/main/resources/Documentation/config.md"
    }
  ]
}
