Chunk missing revisions before attempting to save on target 26/head
authorBenjamin Anderson <b@banjiewen.net>
Wed, 29 Oct 2014 19:52:30 +0000 (12:52 -0700)
committerEric Avdey <eiri@eiri.ca>
Thu, 24 Nov 2016 17:55:18 +0000 (13:55 -0400)
commitc4da61c8eb98cedd3cf7a28c293cb1f6d3ec8571
tree567dec1b0f2135b1b8ae662f9aba3a343496bce7
parent252467cb4a27637090b5f9006483f5b7ab551699
Chunk missing revisions before attempting to save on target

In cases with pathological documents revision patterns (e.g., 10000 open
conflicts and tree depth of 300000 on a single document), attempting to
replicate the full revision tree in one batch causes the system to crash by
attempting to send an oversized message. We've observed messages of > 4GB in the
wild.

This patch divides the set of revisions-to-replicate for a single document into
chunks of a configurable size, thereby allowing operators to keep the system
stable when attempting to replicate these troublesome documents.

BugzID: 37676
src/mem3_rep.erl