You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2011/05/17 16:04:23 UTC

svn commit: r1104260 - in /subversion/branches/1.6.x: STATUS subversion/libsvn_fs_fs/rep-cache.c

Author: hwright
Date: Tue May 17 14:04:23 2011
New Revision: 1104260

URL: http://svn.apache.org/viewvc?rev=1104260&view=rev
Log:
Merge r1100213 from trunk (only the rep-cache.c bits):

 * r1100213, rep-cache.c only
   In FSFS, identify a corruption condition, and don't mask other (unknown)
   corruption conditions.
   Notes:
     There is a merge conflict in fs_fs.c but we don't want to backport
     this change. Just revert that file after merging r1100213 from trunk.
   Votes:
     +1: danielsh, gstein, stsp

Modified:
    subversion/branches/1.6.x/STATUS
    subversion/branches/1.6.x/subversion/libsvn_fs_fs/rep-cache.c   (contents, props changed)

Modified: subversion/branches/1.6.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x/STATUS?rev=1104260&r1=1104259&r2=1104260&view=diff
==============================================================================
--- subversion/branches/1.6.x/STATUS (original)
+++ subversion/branches/1.6.x/STATUS Tue May 17 14:04:23 2011
@@ -284,12 +284,3 @@ Approved changes:
            justifications don't seem to refer to issue #3445. Please can we
            separate these changes and clearly describe each one? And update
            the r878607 log msg.)
-
- * r1100213, rep-cache.c only
-   In FSFS, identify a corruption condition, and don't mask other (unknown)
-   corruption conditions.
-   Notes:
-     There is a merge conflict in fs_fs.c but we don't want to backport
-     this change. Just revert that file after merging r1100213 from trunk.
-   Votes:
-     +1: danielsh, gstein, stsp

Modified: subversion/branches/1.6.x/subversion/libsvn_fs_fs/rep-cache.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x/subversion/libsvn_fs_fs/rep-cache.c?rev=1104260&r1=1104259&r2=1104260&view=diff
==============================================================================
--- subversion/branches/1.6.x/subversion/libsvn_fs_fs/rep-cache.c (original)
+++ subversion/branches/1.6.x/subversion/libsvn_fs_fs/rep-cache.c Tue May 17 14:04:23 2011
@@ -17,6 +17,7 @@
 
 #include "svn_private_config.h"
 
+#include "fs_fs.h"
 #include "fs.h"
 #include "rep-cache.h"
 #include "../libsvn_fs/fs-loader.h"
@@ -123,6 +124,26 @@ svn_fs_fs__get_rep_reference(representat
   else
     *rep = NULL;
 
+  /* Sanity check. */
+  if (*rep)
+    {
+      svn_revnum_t youngest;
+      
+      youngest = ffd->youngest_rev_cache;
+      if (youngest < (*rep)->revision)
+      {
+        /* Stale cache. */
+        SVN_ERR(svn_fs_fs__youngest_rev(&youngest, fs, pool));
+
+        /* Fresh cache. */
+        if (youngest < (*rep)->revision)
+          return svn_error_createf(SVN_ERR_FS_CORRUPT, NULL,
+                                   _("Youngest revision is r%ld, but "
+                                     "rep-cache contains r%ld"),
+                                   youngest, (*rep)->revision);
+      }
+    }
+
   return svn_sqlite__reset(stmt);
 }
 

Propchange: subversion/branches/1.6.x/subversion/libsvn_fs_fs/rep-cache.c
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Tue May 17 14:04:23 2011
@@ -0,0 +1,116 @@
+/subversion/branches/1.5.x-r30215/subversion/libsvn_fs_fs/rep-cache.c:870312
+/subversion/branches/1.6.x-1.6.8-serfassertion/subversion/libsvn_fs_fs/rep-cache.c:900822-900868
+/subversion/branches/1.6.x-3242-partial-fixes/subversion/libsvn_fs_fs/rep-cache.c:931279-932637
+/subversion/branches/1.6.x-UNC-paths/subversion/libsvn_fs_fs/rep-cache.c:876471-876545
+/subversion/branches/1.6.x-dirent-basename/subversion/libsvn_fs_fs/rep-cache.c:876130-876262
+/subversion/branches/1.6.x-fsfs-begin-txn-deadlock/subversion/libsvn_fs_fs/rep-cache.c:1063950-1104090
+/subversion/branches/1.6.x-future-proof/subversion/libsvn_fs_fs/rep-cache.c:880259-884209
+/subversion/branches/1.6.x-issue-3242-partial/subversion/libsvn_fs_fs/rep-cache.c:916088-923778
+/subversion/branches/1.6.x-issue3242-reintegrate/subversion/libsvn_fs_fs/rep-cache.c:954549-1001798
+/subversion/branches/1.6.x-issue3303/subversion/libsvn_fs_fs/rep-cache.c:950948-955336
+/subversion/branches/1.6.x-issue3390/subversion/libsvn_fs_fs/rep-cache.c:907042-927863
+/subversion/branches/1.6.x-issue3432/subversion/libsvn_fs_fs/rep-cache.c:878598-924025
+/subversion/branches/1.6.x-issue3443/subversion/libsvn_fs_fs/rep-cache.c:878597-879480
+/subversion/branches/1.6.x-issue3469/subversion/libsvn_fs_fs/rep-cache.c:945700-953293
+/subversion/branches/1.6.x-issue3506/subversion/libsvn_fs_fs/rep-cache.c:934622-955678
+/subversion/branches/1.6.x-issue3506-init_once/subversion/libsvn_fs_fs/rep-cache.c:935083-955686
+/subversion/branches/1.6.x-issue3519/subversion/libsvn_fs_fs/rep-cache.c:880376-889934
+/subversion/branches/1.6.x-issue3573/subversion/libsvn_fs_fs/rep-cache.c:906488-923765
+/subversion/branches/1.6.x-issue3605/subversion/libsvn_fs_fs/rep-cache.c:923668-923887
+/subversion/branches/1.6.x-issue3623/subversion/libsvn_fs_fs/rep-cache.c:952794-956049
+/subversion/branches/1.6.x-issue3646/subversion/libsvn_fs_fs/rep-cache.c:957327-1002699
+/subversion/branches/1.6.x-issue3648/subversion/libsvn_fs_fs/rep-cache.c:964172-1001805
+/subversion/branches/1.6.x-issue3651/subversion/libsvn_fs_fs/rep-cache.c:952977-954985
+/subversion/branches/1.6.x-issue3654/subversion/libsvn_fs_fs/rep-cache.c:953882-955338
+/subversion/branches/1.6.x-issue3683/subversion/libsvn_fs_fs/rep-cache.c:965785-988062
+/subversion/branches/1.6.x-issue3700/subversion/libsvn_fs_fs/rep-cache.c:991967-997279
+/subversion/branches/1.6.x-issue3719/subversion/libsvn_fs_fs/rep-cache.c:1075930-1096984
+/subversion/branches/1.6.x-issue3727/subversion/libsvn_fs_fs/rep-cache.c:1032967-1033213
+/subversion/branches/1.6.x-issue3745/subversion/libsvn_fs_fs/rep-cache.c:1032257-1033223
+/subversion/branches/1.6.x-issue3816/subversion/libsvn_fs_fs/rep-cache.c:1083880-1104106
+/subversion/branches/1.6.x-issue3843/subversion/libsvn_fs_fs/rep-cache.c:1084999-1104104
+/subversion/branches/1.6.x-issue3845/subversion/libsvn_fs_fs/rep-cache.c:1086922-1104099
+/subversion/branches/1.6.x-issue3853/subversion/libsvn_fs_fs/rep-cache.c:1091877-1103782
+/subversion/branches/1.6.x-no-svn_uri/subversion/libsvn_fs_fs/rep-cache.c:876360-876415
+/subversion/branches/1.6.x-no-wcng-check/subversion/libsvn_fs_fs/rep-cache.c:1022248-1035322
+/subversion/branches/1.6.x-r1002094/subversion/libsvn_fs_fs/rep-cache.c:1002741-1002773
+/subversion/branches/1.6.x-r1024269/subversion/libsvn_fs_fs/rep-cache.c:1024274-1035798
+/subversion/branches/1.6.x-r1051744/subversion/libsvn_fs_fs/rep-cache.c:1052424-1071327
+/subversion/branches/1.6.x-r1058269/subversion/libsvn_fs_fs/rep-cache.c:1058271-1072344
+/subversion/branches/1.6.x-r1068988/subversion/libsvn_fs_fs/rep-cache.c:1070588-1072337
+/subversion/branches/1.6.x-r1072084/subversion/libsvn_fs_fs/rep-cache.c:1072274-1100234
+/subversion/branches/1.6.x-r36178/subversion/libsvn_fs_fs/rep-cache.c:877876-877884
+/subversion/branches/1.6.x-r36252/subversion/libsvn_fs_fs/rep-cache.c:876328-876788
+/subversion/branches/1.6.x-r37622/subversion/libsvn_fs_fs/rep-cache.c:877699-877993
+/subversion/branches/1.6.x-r37627/subversion/libsvn_fs_fs/rep-cache.c:877704-877928
+/subversion/branches/1.6.x-r37857/subversion/libsvn_fs_fs/rep-cache.c:877932-877936
+/subversion/branches/1.6.x-r37953/subversion/libsvn_fs_fs/rep-cache.c:879809-880071
+/subversion/branches/1.6.x-r37988/subversion/libsvn_fs_fs/rep-cache.c:878063-878897
+/subversion/branches/1.6.x-r38000/subversion/libsvn_fs_fs/rep-cache.c:879083-879767
+/subversion/branches/1.6.x-r38222/subversion/libsvn_fs_fs/rep-cache.c:878299-878891
+/subversion/branches/1.6.x-r38572/subversion/libsvn_fs_fs/rep-cache.c:878661-878666
+/subversion/branches/1.6.x-r38799/subversion/libsvn_fs_fs/rep-cache.c:878880-878917
+/subversion/branches/1.6.x-r38836/subversion/libsvn_fs_fs/rep-cache.c:878911-952818
+/subversion/branches/1.6.x-r38927/subversion/libsvn_fs_fs/rep-cache.c:879002-879176
+/subversion/branches/1.6.x-r39019/subversion/libsvn_fs_fs/rep-cache.c:879132-895676
+/subversion/branches/1.6.x-r39109/subversion/libsvn_fs_fs/rep-cache.c:879131
+/subversion/branches/1.6.x-r39557/subversion/libsvn_fs_fs/rep-cache.c:879668-879907
+/subversion/branches/1.6.x-r39887/subversion/libsvn_fs_fs/rep-cache.c:880024-880066
+/subversion/branches/1.6.x-r40452/subversion/libsvn_fs_fs/rep-cache.c:880530-890996
+/subversion/branches/1.6.x-r877814/subversion/libsvn_fs_fs/rep-cache.c:1003097-1033216
+/subversion/branches/1.6.x-r879757/subversion/libsvn_fs_fs/rep-cache.c:987687-999407
+/subversion/branches/1.6.x-r880146/subversion/libsvn_fs_fs/rep-cache.c:1071612-1072350
+/subversion/branches/1.6.x-r889840/subversion/libsvn_fs_fs/rep-cache.c:889888-890974
+/subversion/branches/1.6.x-r891672/subversion/libsvn_fs_fs/rep-cache.c:891676-923748
+/subversion/branches/1.6.x-r892050/subversion/libsvn_fs_fs/rep-cache.c:923839-923856
+/subversion/branches/1.6.x-r896522/subversion/libsvn_fs_fs/rep-cache.c:896528-897866
+/subversion/branches/1.6.x-r898963/subversion/libsvn_fs_fs/rep-cache.c:899874-915098
+/subversion/branches/1.6.x-r905326/subversion/libsvn_fs_fs/rep-cache.c:905545-923537
+/subversion/branches/1.6.x-r907644/subversion/libsvn_fs_fs/rep-cache.c:1033292-1033692
+/subversion/branches/1.6.x-r917523/subversion/libsvn_fs_fs/rep-cache.c:1035989-1104126
+/subversion/branches/1.6.x-r923389/subversion/libsvn_fs_fs/rep-cache.c:927445-929628
+/subversion/branches/1.6.x-r926151/subversion/libsvn_fs_fs/rep-cache.c:927922-929631
+/subversion/branches/1.6.x-r933299/subversion/libsvn_fs_fs/rep-cache.c:933310-934492
+/subversion/branches/1.6.x-r935631/subversion/libsvn_fs_fs/rep-cache.c:952683-955333
+/subversion/branches/1.6.x-r935996/subversion/libsvn_fs_fs/rep-cache.c:936212-952816
+/subversion/branches/1.6.x-r979045/subversion/libsvn_fs_fs/rep-cache.c:987702-997248
+/subversion/branches/1.6.x-r980811/subversion/libsvn_fs_fs/rep-cache.c:980813-987709
+/subversion/branches/1.6.x-r981921/subversion/libsvn_fs_fs/rep-cache.c:981922-997253
+/subversion/branches/1.6.x-r991534/subversion/libsvn_fs_fs/rep-cache.c:1003116-1033219
+/subversion/branches/1.6.x-r997457/subversion/libsvn_fs_fs/rep-cache.c:997808-1002642
+/subversion/branches/1.6.x-svn_fs_commit_txn/subversion/libsvn_fs_fs/rep-cache.c:1053419-1104095
+/subversion/branches/1.6.x-wc-ng-check-override/subversion/libsvn_fs_fs/rep-cache.c:910213-923776
+/subversion/branches/1.6.x-wc-ng-error/subversion/libsvn_fs_fs/rep-cache.c:929379-929636
+/subversion/branches/bdb-reverse-deltas/subversion/libsvn_fs_fs/rep-cache.c:872050-872529
+/subversion/branches/diff-callbacks3/subversion/libsvn_fs_fs/rep-cache.c:870059-870761
+/subversion/branches/dont-save-plaintext-passwords-by-default/subversion/libsvn_fs_fs/rep-cache.c:870728-871118
+/subversion/branches/double-delete/subversion/libsvn_fs_fs/rep-cache.c:870511-872970
+/subversion/branches/file-externals/subversion/libsvn_fs_fs/rep-cache.c:871779-873302
+/subversion/branches/fs-rep-sharing/subversion/libsvn_fs_fs/rep-cache.c:869036-873803
+/subversion/branches/fsfs-pack/subversion/libsvn_fs_fs/rep-cache.c:873717-874575
+/subversion/branches/gnome-keyring/subversion/libsvn_fs_fs/rep-cache.c:870558-871410
+/subversion/branches/http-protocol-v2/subversion/libsvn_fs_fs/rep-cache.c:875632
+/subversion/branches/in-memory-cache/subversion/libsvn_fs_fs/rep-cache.c:869829-871452
+/subversion/branches/issue-2843-dev/subversion/libsvn_fs_fs/rep-cache.c:871432-874179
+/subversion/branches/issue-3000/subversion/libsvn_fs_fs/rep-cache.c:871713,871716-871719,871721-871726,871728,871734
+/subversion/branches/issue-3067-deleted-subtrees/subversion/libsvn_fs_fs/rep-cache.c:873375-874084
+/subversion/branches/issue-3148-dev/subversion/libsvn_fs_fs/rep-cache.c:875193-875204
+/subversion/branches/issue-3220-dev/subversion/libsvn_fs_fs/rep-cache.c:872210-872226
+/subversion/branches/issue-3242-dev/subversion/libsvn_fs_fs/rep-cache.c:879762,880472,880579
+/subversion/branches/issue-3334-dirs/subversion/libsvn_fs_fs/rep-cache.c:875156-875867
+/subversion/branches/kwallet/subversion/libsvn_fs_fs/rep-cache.c:870785-871314
+/subversion/branches/log-g-performance/subversion/libsvn_fs_fs/rep-cache.c:870941-871032
+/subversion/branches/merge-skips-obstructions/subversion/libsvn_fs_fs/rep-cache.c:874525-874615
+/subversion/branches/performance/subversion/libsvn_fs_fs/rep-cache.c:982355,983766,984927
+/subversion/branches/reintegrate-improvements/subversion/libsvn_fs_fs/rep-cache.c:873853-874164
+/subversion/branches/subtree-mergeinfo/subversion/libsvn_fs_fs/rep-cache.c:876855
+/subversion/branches/svn-mergeinfo-enhancements/subversion/libsvn_fs_fs/rep-cache.c:870119-870195,870197-870288
+/subversion/branches/svnpatch-diff/subversion/libsvn_fs_fs/rep-cache.c:871905,871986
+/subversion/branches/svnserve-logging/subversion/libsvn_fs_fs/rep-cache.c:869828-870893
+/subversion/branches/tc-issue-3334/subversion/libsvn_fs_fs/rep-cache.c:874697-874773
+/subversion/branches/tc-merge-notify/subversion/libsvn_fs_fs/rep-cache.c:874017-874062
+/subversion/branches/tc-resolve/subversion/libsvn_fs_fs/rep-cache.c:874191-874239
+/subversion/branches/tc_url_rev/subversion/libsvn_fs_fs/rep-cache.c:874351-874483
+/subversion/branches/tree-conflicts/subversion/libsvn_fs_fs/rep-cache.c:868291-873154
+/subversion/branches/tree-conflicts-notify/subversion/libsvn_fs_fs/rep-cache.c:873926-874008
+/subversion/trunk/subversion/libsvn_fs_fs/rep-cache.c:875965,875968,876004,876012,876017,876019,876022,876024,876032,876041-876042,876048,876051,876055-876056,876059,876083,876091,876097,876101,876104,876109,876123-876125,876129,876132,876138,876160,876167,876175,876180,876185,876205,876223-876225,876230,876233,876245,876252,876256,876283,876287,876312,876326-876327,876330,876366,876372,876374,876376,876383,876386,876442,876456-876457,876462-876464,876467,876469,876480,876486,876495-876497,876516-876518,876524,876526,876583,876601,876614-876615,876628,876633,876641,876645,876659,876687,876689,876705,876715,876726,876760,876763,876794,876804,876815-876816,876821,876825,876837,876840-876841,876843,876849,876857-876858,876862,876873,876890,876897,876905,876908,876925,876931,876934,876948-876949,876953,876987,876993,877011,877014,877016,877028-877029,877038,877119,877127,877146,877157,877191,877195,877203,877211,877230,877234,877237,877243,877249,877259,877261,877304,877319,8774
 07,877437,877441-877442,877453,877459,877472,877544,877553,877565,877568,877573,877593,877595,877597,877601,877612,877665,877667,877681,877692,877696,877701,877720,877730,877784,877793,877797,877809,877814-877815,877819,877821,877842,877848,877853,877867,877869,877873,877901,877909,877916,877931,877942,877953,877964,877968,877970,877981-877982,878005,878013,878015,878020,878046,878053,878062,878074,878080,878089,878091,878093,878095,878127,878129,878131,878142,878173-878176,878216,878240,878242,878255,878269,878272,878279,878296-878297,878303,878321,878335,878338,878341,878343,878353,878364,878367-878368,878385,878399,878423,878426,878447,878462,878484,878491,878498,878532,878595,878646,878659,878673,878682-878683,878690-878691,878693,878723,878760-878761,878873,878875,878877,878879,878905,878910-878911,878915-878916,878924-878925,878946,878949,878955,878960,878970,878981,879001,879033,879056,879074,879076,879081-879082,879093,879105,879126,879148,879170,879198-879199,879201
 ,879271,879293,879357,879375-879376,879403,879631,879635-879636,879688,879709-879711,879747,879902,879916,879954,879961,879966,879971,880082,880095,880105,880146,880162,880226,880274-880275,880370,880450,880461,880474,880525-880526,880552,881905,884842,886164,886197,888715,888979,889081,889840,891672,892050,892085,895514,895653,896522,896915,898048,898963,899826,899828,900797,901304,901752,902093,902467,904301,904394,904594,905303,905326,906256,906305,906587,907644,908980-908981,917523,917640,918211,922516,923389,923391,926151,926167,927323,927328,931209,931211,931392,931568,932942,933299,934599,934603,935631,935992,935996,937610,939375-939376,944635,945350,946355,946767,947006,948512,948916,949307,950931,950933,951753,952992,953317,955369,957507,958024,959004,959760,961055,961970,964167,964349,964767,965405,965469,965508,979045,979429,980811,981449,981921,984565,984928,984931,991534,992114,996884,997026,997070,997457,997466,997471,997474,1000038,1000060,1000607,1000612,1001
 009,1002094,1005446,1022675,1024269,1027957,1028084,1028108,1028125,1031165,1031186,1032808,1033166,1033290,1033665,1033685,1033921,1034557,1035745,1036534,1038792,1039040,1041438,1041638,1051632,1051638,1051733,1051744-1051745,1051751,1051761,1051763,1051775,1051778,1051968,1051978,1051988,1052029,1052041,1052068,1053185,1053208,1053233,1053499,1058269,1058722,1063870,1063946,1064839,1066249,1066270,1066276,1068988,1070912,1071239,1071307,1072084,1072953,1076759,1076826,1084575,1084581,1084764,1084962,1084978,1086222,1094692,1095654,1098608,1100213,1103665