summaryrefslogtreecommitdiff
path: root/src/couch/src/couch_bt_engine.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/couch/src/couch_bt_engine.erl')
-rw-r--r--src/couch/src/couch_bt_engine.erl15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/couch/src/couch_bt_engine.erl b/src/couch/src/couch_bt_engine.erl
index ca98d017b..5aa4de8f9 100644
--- a/src/couch/src/couch_bt_engine.erl
+++ b/src/couch/src/couch_bt_engine.erl
@@ -594,26 +594,25 @@ seq_tree_reduce(rereduce, Reds) ->
lists:sum(Reds).
-local_tree_split(#doc{} = Doc) ->
+local_tree_split(#doc{revs = {0, [Rev]}} = Doc) when is_binary(Rev) ->
#doc{
id = Id,
- revs = {0, [Rev]},
body = BodyData
} = Doc,
- {Id, {Rev, BodyData}}.
-
+ {Id, {binary_to_integer(Rev), BodyData}};
-local_tree_join(Id, {Rev, BodyData}) when is_binary(Rev) ->
+local_tree_split(#doc{revs = {0, [Rev]}} = Doc) when is_integer(Rev) ->
#doc{
id = Id,
- revs = {0, [Rev]},
body = BodyData
- };
+ } = Doc,
+ {Id, {Rev, BodyData}}.
+
local_tree_join(Id, {Rev, BodyData}) when is_integer(Rev) ->
#doc{
id = Id,
- revs = {0, [list_to_binary(integer_to_list(Rev))]},
+ revs = {0, [integer_to_binary(Rev)]},
body = BodyData
}.