You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2014/12/24 16:27:05 UTC
svn commit: r1647806 - in
/subversion/branches/fsx-id/subversion/libsvn_fs_x: dag.c fs.h
transaction.c transaction.h
Author: stefan2
Date: Wed Dec 24 15:27:05 2014
New Revision: 1647806
URL: http://svn.apache.org/r1647806
Log:
On the fsx-id branch: Remove also the second svn_fs_id_t from FSX'
transaction_t struct.
* subversion/libsvn_fs_x/fs.h
(transaction_t): Replace the base root noderev-ID with the base rev.
* subversion/libsvn_fs_x/transaction.h
(svn_fs_x__get_txn_ids): Rename to ...
(svn_fs_x__get_base_rev): ... this. Make it return a revision instead
of a FS API ID.
* subversion/libsvn_fs_x/transaction.c
(svn_fs_x__get_txn): Simplify transaction_t initialization.
(svn_fs_x__open_txn,
svn_fs_x__get_txn_ids): Update.
* subversion/libsvn_fs_x/dag.c
(svn_fs_x__dag_txn_base_root): Update caller; construct root noderev-ID
on demand.
Modified:
subversion/branches/fsx-id/subversion/libsvn_fs_x/dag.c
subversion/branches/fsx-id/subversion/libsvn_fs_x/fs.h
subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c
subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.h
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/dag.c
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/dag.c?rev=1647806&r1=1647805&r2=1647806&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/dag.c (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/dag.c Wed Dec 24 15:27:05 2014
@@ -711,11 +711,13 @@ svn_fs_x__dag_txn_base_root(dag_node_t *
svn_fs_x__txn_id_t txn_id,
apr_pool_t *pool)
{
- const svn_fs_id_t *base_root_id;
+ svn_fs_x__noderev_id_t base_root_id;
+ svn_revnum_t base_rev;
- SVN_ERR(svn_fs_x__get_txn_ids(&base_root_id, fs, txn_id, pool));
- return svn_fs_x__dag_get_node(node_p, fs,
- svn_fs_x__id_noderev_id(base_root_id), pool);
+ SVN_ERR(svn_fs_x__get_base_rev(&base_rev, fs, txn_id, pool));
+
+ svn_fs_x__init_rev_root(&base_root_id, base_rev);
+ return svn_fs_x__dag_get_node(node_p, fs, &base_root_id, pool);
}
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/fs.h
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/fs.h?rev=1647806&r1=1647805&r2=1647806&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/fs.h (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/fs.h Wed Dec 24 15:27:05 2014
@@ -427,9 +427,8 @@ typedef struct transaction_t
may be NULL if there are no properties. */
apr_hash_t *proplist;
- /* node revision id of the node which is the root of the revision
- upon which this txn is base. (unfinished only) */
- const svn_fs_id_t *base_id;
+ /* revision upon which this txn is base. (unfinished only) */
+ svn_revnum_t base_rev;
/* copies list (const char * copy_ids), or NULL if there have been
no copies in this transaction. */
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c?rev=1647806&r1=1647805&r2=1647806&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.c Wed Dec 24 15:27:05 2014
@@ -1422,8 +1422,7 @@ svn_fs_x__get_txn(transaction_t **txn_p,
SVN_ERR(svn_fs_x__get_node_revision(&noderev, fs, &root_id, pool, pool));
- txn->base_id = svn_fs_x__id_create(&noderev->node_id,
- &noderev->predecessor_id, pool);
+ txn->base_rev = svn_fs_x__get_revnum(noderev->predecessor_id.change_set);
txn->copies = NULL;
*txn_p = txn;
@@ -3582,7 +3581,7 @@ svn_fs_x__open_txn(svn_fs_txn_t **txn_p,
SVN_ERR(svn_fs_x__get_txn(&local_txn, fs, txn_id, pool));
- txn->base_rev = svn_fs_x__id_rev(local_txn->base_id);
+ txn->base_rev = local_txn->base_rev;
txn->vtable = &txn_vtable;
txn->fsap_data = ftd;
@@ -3643,14 +3642,14 @@ svn_fs_x__delete_node_revision(svn_fs_t
/*** Transactions ***/
svn_error_t *
-svn_fs_x__get_txn_ids(const svn_fs_id_t **base_root_id_p,
- svn_fs_t *fs,
- svn_fs_x__txn_id_t txn_id,
- apr_pool_t *pool)
+svn_fs_x__get_base_rev(svn_revnum_t *revnum,
+ svn_fs_t *fs,
+ svn_fs_x__txn_id_t txn_id,
+ apr_pool_t *pool)
{
transaction_t *txn;
SVN_ERR(svn_fs_x__get_txn(&txn, fs, txn_id, pool));
- *base_root_id_p = txn->base_id;
+ *revnum = txn->base_rev;
return SVN_NO_ERROR;
}
Modified: subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.h
URL: http://svn.apache.org/viewvc/subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.h?rev=1647806&r1=1647805&r2=1647806&view=diff
==============================================================================
--- subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.h (original)
+++ subversion/branches/fsx-id/subversion/libsvn_fs_x/transaction.h Wed Dec 24 15:27:05 2014
@@ -300,10 +300,10 @@ svn_fs_x__delete_node_revision(svn_fs_t
Allocate *ROOT_ID_P and *BASE_ROOT_ID_P in POOL. */
svn_error_t *
-svn_fs_x__get_txn_ids(const svn_fs_id_t **base_root_id_p,
- svn_fs_t *fs,
- svn_fs_x__txn_id_t txn_id,
- apr_pool_t *pool);
+svn_fs_x__get_base_rev(svn_revnum_t *revnum,
+ svn_fs_t *fs,
+ svn_fs_x__txn_id_t txn_id,
+ apr_pool_t *pool);
/* Find the value of the property named PROPNAME in transaction TXN.
Return the contents in *VALUE_P. The contents will be allocated