)]}'
{
  "commit": "924b9229717b749e303f3fb161616bebf53b5cdc",
  "tree": "4788cd7cdc18bfc1cd12916ba506c091e9d73fb8",
  "parents": [
    "dc830cbfac8dd9633e070550359a5d6f8dac8fe5"
  ],
  "author": {
    "name": "ajs",
    "email": "ajs",
    "time": "Sat Apr 16 17:11:24 2005 +0000"
  },
  "committer": {
    "name": "ajs",
    "email": "ajs",
    "time": "Sat Apr 16 17:11:24 2005 +0000"
  },
  "message": "2005-04-16 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* configure.ac: Added AC_ARG_ENABLE(time-check).  By default,\n\t  warning messages will now be printed for threads or commands that take\n\t  longer than 5 seconds, but this configure argument can be used\n\t  to disable the checks or change the threshold.\n\t* thread.h (thread_consumed_time): Declare new function to calculate\n\t  elapsed microseconds.\n\t* thread.c (thread_consumed_time): Must be global not static so we\n\t  can call it from lib/vty.c:vty_command.\n\t  (thread_should_yield): Surround with `#if 0\u0027 to make clear that this\n\t  function is not currently being used anywhere.\n\t  (thread_call): If CONSUMED_TIME_CHECK is defined, print a CPU HOG\n\t  warning message if the thread takes more than CONSUMED_TIME_CHECK\n\t  microseconds.\n\t* vty.c (vty_command): If CONSUMED_TIME_CHECK is defined, print a CPU\n\t  HOG warning message if the command takes more than CONSUMED_TIME_CHECK\n\t  microseconds.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0b10293bbe7b428414b0617debb8af1f03136b9d",
      "old_mode": 33188,
      "old_path": "ChangeLog",
      "new_id": "7966cc47c855c77e430e53c9fc59e835e426fb59",
      "new_mode": 33188,
      "new_path": "ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "08b5214f98378822e4766836356ba6bb891d7c81",
      "old_mode": 33261,
      "old_path": "configure.ac",
      "new_id": "cbc9521245d29c25de60099cf6b18904d5548482",
      "new_mode": 33261,
      "new_path": "configure.ac"
    },
    {
      "type": "modify",
      "old_id": "e5ee54947b0b4148cedd4eee6ccd42233dab84ac",
      "old_mode": 33188,
      "old_path": "lib/ChangeLog",
      "new_id": "d8328499ee2dd7e8744b79a5cd6f7638a4e025bc",
      "new_mode": 33188,
      "new_path": "lib/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "05212d8561c866d7501e04c77a676e06018b58b8",
      "old_mode": 33188,
      "old_path": "lib/thread.c",
      "new_id": "d1c925c4983df6bc358c4bcaa385b596138c77c4",
      "new_mode": 33188,
      "new_path": "lib/thread.c"
    },
    {
      "type": "modify",
      "old_id": "716a6a6c3cd8c3f97106f8ecbe2a9e5e94c6ffa9",
      "old_mode": 33188,
      "old_path": "lib/thread.h",
      "new_id": "4008ba726017fe26ba170f30dcfdf4a600d6233b",
      "new_mode": 33188,
      "new_path": "lib/thread.h"
    },
    {
      "type": "modify",
      "old_id": "600c9fd86cc8208e4d655619718513734f5b7df8",
      "old_mode": 33188,
      "old_path": "lib/vty.c",
      "new_id": "ea74172c53ba5b7e3dffeb84f2801584c8117a32",
      "new_mode": 33188,
      "new_path": "lib/vty.c"
    }
  ]
}
