Return-Path: X-Original-To: apmail-subversion-commits-archive@minotaur.apache.org Delivered-To: apmail-subversion-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6A3E7FF21 for ; Sat, 27 Apr 2013 17:24:24 +0000 (UTC) Received: (qmail 29117 invoked by uid 500); 27 Apr 2013 17:24:24 -0000 Delivered-To: apmail-subversion-commits-archive@subversion.apache.org Received: (qmail 29101 invoked by uid 500); 27 Apr 2013 17:24:24 -0000 Mailing-List: contact commits-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@subversion.apache.org Delivered-To: mailing list commits@subversion.apache.org Received: (qmail 29094 invoked by uid 99); 27 Apr 2013 17:24:24 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 27 Apr 2013 17:24:24 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 27 Apr 2013 17:24:23 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 484832388A29; Sat, 27 Apr 2013 17:24:03 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1476634 - in /subversion/branches/fsfs-format7/subversion/libsvn_fs_fs: util.c util.h Date: Sat, 27 Apr 2013 17:24:03 -0000 To: commits@subversion.apache.org From: stefan2@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20130427172403.484832388A29@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: stefan2 Date: Sat Apr 27 17:24:02 2013 New Revision: 1476634 URL: http://svn.apache.org/r1476634 Log: On the fsfs-format7: introduce two rev / pack file utility functions * subversion/libsvn_fs_fs/util.h (packed_base_rev, pack_size): declare new utilities * subversion/libsvn_fs_fs/util.c (packed_base_rev, pack_size): implement them Modified: subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.c subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.h Modified: subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.c URL: http://svn.apache.org/viewvc/subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.c?rev=1476634&r1=1476633&r2=1476634&view=diff ============================================================================== --- subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.c (original) +++ subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.c Sat Apr 27 17:24:02 2013 @@ -72,6 +72,24 @@ is_packed_revprop(svn_fs_t *fs, svn_revn && (ffd->format >= SVN_FS_FS__MIN_PACKED_REVPROP_FORMAT); } +svn_revnum_t +packed_base_rev(svn_fs_t *fs, svn_revnum_t rev) +{ + fs_fs_data_t *ffd = fs->fsap_data; + + return rev < ffd->min_unpacked_rev + ? rev - (rev % ffd->max_files_per_dir) + : rev; +} + +svn_revnum_t +pack_size(svn_fs_t *fs, svn_revnum_t rev) +{ + fs_fs_data_t *ffd = fs->fsap_data; + + return rev < ffd->min_unpacked_rev ? ffd->max_files_per_dir : 1; +} + const char * path_format(svn_fs_t *fs, apr_pool_t *pool) { Modified: subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.h URL: http://svn.apache.org/viewvc/subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.h?rev=1476634&r1=1476633&r2=1476634&view=diff ============================================================================== --- subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.h (original) +++ subversion/branches/fsfs-format7/subversion/libsvn_fs_fs/util.h Sat Apr 27 17:24:02 2013 @@ -78,6 +78,15 @@ svn_boolean_t is_packed_revprop(svn_fs_t *fs, svn_revnum_t rev); +/* Return the revision number of the pack / rev file in FS containing REV. */ +svn_revnum_t +packed_base_rev(svn_fs_t *fs, svn_revnum_t rev); + +/* Return the number of revisions in the pack / rev file in FS that contains + * revision REV. */ +svn_revnum_t +pack_size(svn_fs_t *fs, svn_revnum_t rev); + const char * path_format(svn_fs_t *fs, apr_pool_t *pool);