From patchwork Mon Jan 2 17:51:15 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [5,of,7,flagprocessor,v7] revlog: REVIDX_EXTSTORED flag From: Remi Chaintron X-Patchwork-Id: 18072 Message-Id: <8a72e38f826c86f2a9ed.1483379475@remi-mbp2> To: Date: Mon, 2 Jan 2017 12:51:15 -0500 # HG changeset patch # User Remi Chaintron # Date 1482451803 18000 # Thu Dec 22 19:10:03 2016 -0500 # Node ID 8a72e38f826c86f2a9ede795198a016c330734de # Parent c59965f26abba42afccd05881c5f3a73d7f2e1d1 revlog: REVIDX_EXTSTORED flag diff --git a/mercurial/help/internals/revlogs.txt b/mercurial/help/internals/revlogs.txt --- a/mercurial/help/internals/revlogs.txt +++ b/mercurial/help/internals/revlogs.txt @@ -90,6 +90,7 @@ 6-7 (2 bytes) Bit flags impacting revision behavior. The following bit offsets define: 0: REVIDX_ISCENSORED indicates the revision has censored metadata. + 1: REVIDX_EXTSTORED indicates the revision data is stored externally. 8-11 (4 bytes) Compressed length of revision data / chunk as stored in revlog. 12-15 (4 bytes) diff --git a/mercurial/revlog.py b/mercurial/revlog.py --- a/mercurial/revlog.py +++ b/mercurial/revlog.py @@ -54,11 +54,13 @@ # revlog index flags REVIDX_ISCENSORED = (1 << 15) # revision has censor metadata, must be verified +REVIDX_EXTSTORED = (1 << 14) # revision data is stored externally REVIDX_DEFAULT_FLAGS = 0 -REVIDX_KNOWN_FLAGS = REVIDX_ISCENSORED +REVIDX_KNOWN_FLAGS = REVIDX_ISCENSORED | REVIDX_EXTSTORED # stable order in which flags need to be processed and their transforms applied REVIDX_FLAGS_ORDER = [ REVIDX_ISCENSORED, + REVIDX_EXTSTORED, ] # max size of revlog with inline data