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/05/24 01:25:14 UTC

svn commit: r1597218 - in /subversion/trunk/subversion/libsvn_fs_x: ./ fs.h tree.c

Author: stefan2
Date: Fri May 23 23:25:14 2014
New Revision: 1597218

URL: http://svn.apache.org/r1597218
Log:
Sync'ing FSX with FSFS:
Merge revisions r1555492,1575019,1575428,1575447 from
subversion/libsvn_fs_fs into subversion/libsvn_fs_x and
resolve a few trivial text conflicts.

This ports type size and declaration fixes from FSFS to FSX.

Modified:
    subversion/trunk/subversion/libsvn_fs_x/   (props changed)
    subversion/trunk/subversion/libsvn_fs_x/fs.h
    subversion/trunk/subversion/libsvn_fs_x/tree.c

Propchange: subversion/trunk/subversion/libsvn_fs_x/
------------------------------------------------------------------------------
  Merged /subversion/trunk/subversion/libsvn_fs_fs:r1555492,1575019,1575428,1575447

Modified: subversion/trunk/subversion/libsvn_fs_x/fs.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_x/fs.h?rev=1597218&r1=1597217&r2=1597218&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_x/fs.h (original)
+++ subversion/trunk/subversion/libsvn_fs_x/fs.h Fri May 23 23:25:14 2014
@@ -194,14 +194,15 @@ typedef struct fs_x_dag_cache_t fs_x_dag
 
 /* Key type for all caches that use revision + offset / counter as key.
 
-   NOTE: always initialize this using calloc() or '= {0};'!  This is used
-   as a cache key and the padding bytes on 32 bit archs should be zero for
-   cache effectiveness. */
+   Note: Cache keys should be 16 bytes for best performance and there
+         should be no padding. */
 typedef struct pair_cache_key_t
 {
-  svn_revnum_t revision;
+  /* The object's revision.  Use the 64 data type to prevent padding. */
+  apr_int64_t revision;
 
-  apr_uint64_t second;
+  /* Sub-address: item index, revprop generation, packed flag, etc. */
+  apr_int64_t second;
 } pair_cache_key_t;
 
 /* Key type that identifies a representation / rep header. */
@@ -217,14 +218,16 @@ typedef struct representation_cache_key_
   apr_uint64_t item_index;
 } representation_cache_key_t;
 
-/* Key type that identifies a txdelta window. */
+/* Key type that identifies a txdelta window.
+
+   Note: Cache keys should require no padding. */
 typedef struct window_cache_key_t
 {
-  /* Revision that contains the representation */
-  apr_uint32_t revision;
+  /* The object's revision.  Use the 64 data type to prevent padding. */
+  apr_int64_t revision;
 
-  /* Window number within that representation */
-  int chunk_index;
+  /* Window number within that representation. */
+  apr_int64_t chunk_index;
 
   /* Item index of the representation */
   apr_uint64_t item_index;

Modified: subversion/trunk/subversion/libsvn_fs_x/tree.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_x/tree.c?rev=1597218&r1=1597217&r2=1597218&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_x/tree.c (original)
+++ subversion/trunk/subversion/libsvn_fs_x/tree.c Fri May 23 23:25:14 2014
@@ -4201,7 +4201,7 @@ make_txn_root(svn_fs_root_t **root_p,
 
 
 /* Verify. */
-static APR_INLINE const char *
+static const char *
 stringify_node(dag_node_t *node,
                apr_pool_t *pool)
 {