rnewson commented on issue #2225:
URL: https://github.com/apache/couchdb/issues/2225#issuecomment-755423622


   Confirmed that the `cache_grv` work achieves this. I print the GRV within 
the fold_docs transaction and the get_body_wait transactions and they are all 
the same.
   
   ```diff
   diff --git a/src/fabric/src/fabric2_db.erl b/src/fabric/src/fabric2_db.erl
   index a310470ea..352b30946 100644
   --- a/src/fabric/src/fabric2_db.erl
   +++ b/src/fabric/src/fabric2_db.erl
   @@ -946,9 +946,12 @@ fold_docs(Db, UserFun, UserAcc0, Options) ->
        fabric2_fdb:transactional(Db, fun(TxDb) ->
            try
                #{
   +              tx := Tx,
                    db_prefix := DbPrefix
                } = TxDb,
   
   +couch_log:error("fold_docs ~p", [erlfdb:wait(erlfdb:get_read_version(Tx))]),
   
                Prefix = erlfdb_tuple:pack({?DB_ALL_DOCS}, DbPrefix),
                Meta = get_all_docs_meta(TxDb, Options),
   
   diff --git a/src/fabric/src/fabric2_fdb.erl b/src/fabric/src/fabric2_fdb.erl
   index 5394f27bb..8b2a19535 100644
   --- a/src/fabric/src/fabric2_fdb.erl
   +++ b/src/fabric/src/fabric2_fdb.erl
   @@ -772,7 +772,7 @@ get_doc_body_wait(#{} = Db0, DocId, RevInfo, Future) ->
        #{
            tx := Tx
        } = Db = ensure_current(Db0),
   -
   +    couch_log:error("get_doc_body ~p", 
[erlfdb:wait(erlfdb:get_read_version(Tx))]),
        #{
            rev_id := {RevPos, Rev},
            rev_path := RevPath
   ```


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to