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 2016/04/24 20:13:16 UTC
svn commit: r1740723 - /subversion/trunk/subversion/libsvn_fs_x/cached_data.c
Author: stefan2
Date: Sun Apr 24 18:13:16 2016
New Revision: 1740723
URL: http://svn.apache.org/viewvc?rev=1740723&view=rev
Log:
Do the equivalent of r1740721 in FSX as well, except that there are
several functions with no docstring at all. No functional change.
* subversion/libsvn_fs_x/cached_data.c
(block_read_contents,
block_read_changes): Update docstrings. REV_FILE has been around
for a while now ...
block_read_changes_container,
block_read_noderev,
block_read_noderevs_container,
block_read_reps_container,
block_read): Add missing docstring.
Modified:
subversion/trunk/subversion/libsvn_fs_x/cached_data.c
Modified: subversion/trunk/subversion/libsvn_fs_x/cached_data.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_x/cached_data.c?rev=1740723&r1=1740722&r2=1740723&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_x/cached_data.c (original)
+++ subversion/trunk/subversion/libsvn_fs_x/cached_data.c Sun Apr 24 18:13:16 2016
@@ -2896,9 +2896,8 @@ svn_fs_x__get_changes(apr_array_header_t
}
/* Fetch the representation data (header, txdelta / plain windows)
- * addressed by ENTRY->ITEM in FS and cache it if caches are enabled.
- * Read the data from the already open FILE and the wrapping
- * STREAM object. If MAX_OFFSET is not -1, don't read windows that start
+ * addressed by ENTRY->ITEM in FS and cache it under KEY. Read the data
+ * from REV_FILE. If MAX_OFFSET is not -1, don't read windows that start
* at or beyond that offset. Use SCRATCH_POOL for temporary allocations.
*/
static svn_error_t *
@@ -2972,11 +2971,10 @@ read_item(svn_stream_t **stream,
apr_psprintf(pool, "%" APR_OFF_T_FMT, entry->offset));
}
-/* Read all txdelta / plain windows following REP_HEADER in FS as described
- * by ENTRY. Read the data from the already open FILE and the wrapping
- * STREAM object. If MAX_OFFSET is not -1, don't read windows that start
- * at or beyond that offset. Use SCRATCH_POOL for temporary allocations.
- * If caching is not enabled, this is a no-op.
+/* If not already cached or if MUST_READ is set, read the changed paths
+ * list addressed by ENTRY in FS and retúrn it in *CHANGES. Cache the
+ * result if caching is enabled. Read the data from REV_FILE. Allocate
+ * *CHANGES in RESUSLT_POOL and allocate temporaries in SCRATCH_POOL.
*/
static svn_error_t *
block_read_changes(apr_array_header_t **changes,
@@ -3026,6 +3024,13 @@ block_read_changes(apr_array_header_t **
return SVN_NO_ERROR;
}
+/* If not already cached or if MUST_READ is set, read the changed paths
+ * list container addressed by ENTRY in FS. Return the changes list
+ * identified by SUB_ITEM in *CHANGES. Read the data from REV_FILE and
+ * cache the result.
+ *
+ * Allocate *CHANGES in RESUSLT_POOL and everything else in SCRATCH_POOL.
+ */
static svn_error_t *
block_read_changes_container(apr_array_header_t **changes,
svn_fs_t *fs,
@@ -3073,6 +3078,12 @@ block_read_changes_container(apr_array_h
return SVN_NO_ERROR;
}
+/* If not already cached or if MUST_READ is set, read the node revision
+ * addressed by ENTRY in FS and return it in *NODEREV_P. Cache the
+ * result under KEY if caching is enabled. Read the data from REV_FILE.
+ * Allocate *NODEREV_P in RESUSLT_POOL and allocate temporaries in
+ * SCRATCH_POOL.
+ */
static svn_error_t *
block_read_noderev(svn_fs_x__noderev_t **noderev_p,
svn_fs_t *fs,
@@ -3111,6 +3122,12 @@ block_read_noderev(svn_fs_x__noderev_t *
return SVN_NO_ERROR;
}
+/* If not already cached or if MUST_READ is set, read the node revision
+ * container addressed by ENTRY in FS. Return the item identified by
+ * SUB_ITEM in *NODEREV_P. Read the data from REV_FILE and cache it.
+ * Allocate *NODEREV_P in RESUSLT_POOL and allocate temporaries in
+ * SCRATCH_POOL.
+ */
static svn_error_t *
block_read_noderevs_container(svn_fs_x__noderev_t **noderev_p,
svn_fs_t *fs,
@@ -3157,6 +3174,12 @@ block_read_noderevs_container(svn_fs_x__
return SVN_NO_ERROR;
}
+/* If not already cached or if MUST_READ is set, read the representation
+ * container addressed by ENTRY in FS. Return an extractor object for the
+ * item identified by SUB_ITEM in *EXTRACTOR. Read the data from REV_FILE
+ * and cache it. Allocate *EXTRACTOR in RESUSLT_POOL and all temporaries
+ * in SCRATCH_POOL.
+ */
static svn_error_t *
block_read_reps_container(svn_fs_x__rep_extractor_t **extractor,
svn_fs_t *fs,
@@ -3204,6 +3227,16 @@ block_read_reps_container(svn_fs_x__rep_
return SVN_NO_ERROR;
}
+/* Read the whole (e.g. 64kB) block containing the item identified by ID in
+ * FS and put all data into cache. If necessary and depending on heuristics,
+ * neighboring blocks may also get read. The data is being read from
+ * already open REVISION_FILE, which must be the correct rev / pack file
+ * w.r.t. ID->CHANGE_SET.
+ *
+ * For noderevs and changed path lists, the item fetched can be allocated
+ * RESULT_POOL and returned in *RESULT. Otherwise, RESULT must be NULL.
+ * SCRATCH_POOL will be used for all temporary allocations.
+ */
static svn_error_t *
block_read(void **result,
svn_fs_t *fs,