)]}'
{
  "commit": "e5fe0f555f1f37a5534b3982fff41d17923380b0",
  "tree": "12353d2a14068cf76dacd7dd94e249f09197ffdb",
  "parents": [
    "c59bcea8fbc456d86fdcc8acb46ae2a1810fce5d"
  ],
  "author": {
    "name": "Teng Long",
    "email": "dyroneteng@gmail.com",
    "time": "Thu Feb 25 16:00:21 2021 +0800"
  },
  "committer": {
    "name": "Matthias Sohn",
    "email": "matthias.sohn@sap.com",
    "time": "Fri Dec 06 18:10:11 2024 +0000"
  },
  "message": "Support SO_TIMEOUT configuration in Smtp email sender\n\nSocket SO_TIMEOUT is an important core config in socket communication\nallowing to adjust the socket read timeout value.\n\nIn Java, when SO_TIMEOUT is set to a non-zero value, the read()\ncall associated with the socket stream will block until it times out\nafter the configured timeout by throwing a\njava.net.SocketTimeoutException. Otherwise, if SO_TIMEOUT is set 0,\nwhich is the default, it will never timeout.\n\nSometimes this default may cause issues. In Gerrit, by default, the\n\u0027SendEmailExecutor\u0027 is a ScheduledThreadPoolExecutor with\ncorePoolSize\u003d1. Hence when sending emails concurrently, they will be\nsent one by one in FIFO order. If sending an email hangs and can\u0027t make\nprogress, other sending tasks will be blocked until the hanging email\nis eventually sent or until memory is full (the DelayedWorkQueue used\nby ScheduledThreadPoolExecutor is an unbounded queue).\n\nBug: Issue 40013496\nRelease-Notes: Support SO_TIMEOUT configuration in Smtp email sender\nChange-Id: I4adf69298f34b15c0a56a18cf269abd374597104\nSigned-off-by: Dyrone Teng \u003cdyroneteng@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8d53764e081c6f06bbece7c1fa0df80c0db2aae2",
      "old_mode": 33188,
      "old_path": "Documentation/config-gerrit.txt",
      "new_id": "ffe11b16c0644c8382feb4d3de864042493d5565",
      "new_mode": 33188,
      "new_path": "Documentation/config-gerrit.txt"
    },
    {
      "type": "modify",
      "old_id": "14b303507e8039cd2fa26a9e2626551e835d4baf",
      "old_mode": 33188,
      "old_path": "java/com/google/gerrit/server/mail/send/SmtpEmailSender.java",
      "new_id": "ab3334d41ebd5b964154b5c3f76ba34e3c47d5ce",
      "new_mode": 33188,
      "new_path": "java/com/google/gerrit/server/mail/send/SmtpEmailSender.java"
    }
  ]
}
