)]}'
{
  "commit": "3f268abba89bd5b93f43185465e66ef42b3876ad",
  "tree": "982d6eee4837fc481373c5a149e1fde77cfad070",
  "parents": [
    "437c6571fc332802801cdaef4c3c2228fa4fc01e"
  ],
  "author": {
    "name": "Paul J. Davis",
    "email": "paul.joseph.davis@gmail.com",
    "time": "Wed Nov 04 18:48:07 2015 -0600"
  },
  "committer": {
    "name": "Robert Newson",
    "email": "rnewson@apache.org",
    "time": "Thu Nov 12 10:53:00 2015 +0000"
  },
  "message": "Fix couch_replicator_manager rescans\n\nWhen couch_replicator_manager starts it scans every _replicator database\nlooking for replications to start. When it starts the replication it\nmodifies a document in the _replicator database. This change ends up\nsending a message back to couch_replicator_manager to rescan the\ndatabase. This message to rescan the database had no protection to be\nunique. This would result in many processes re-scanning the same\ndatabase over and over.\n\nTo fix this we track the DbName for every scanning process so that if we\nget a change to a database we can ignore the change because a scanner\npid is already running. However we also have to track if we need to\nrestart the scanning pid when it finishes so that we ensure that we\nprocess any changes that occurred during the scan.\n\nCOUCHDB-2878\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c6f79608a7cc2cc971db6b8ef39d972a274f8464",
      "old_mode": 33188,
      "old_path": "src/couch_replicator_manager.erl",
      "new_id": "f0ac7a8acd222c768ce0b0580adc5c47ccade99b",
      "new_mode": 33188,
      "new_path": "src/couch_replicator_manager.erl"
    }
  ]
}
