> -----Original Message----- > From: Bert Huijben [mailto:b...@qqmail.nl] > Sent: zaterdag 14 mei 2011 8:06 > To: Greg Stein; dev@subversion.apache.org > Subject: RE: svn commit: r1102843 - > /subversion/trunk/subversion/libsvn_wc/wc-metadata.sql > > The format 20 bump introduces a foreign key (now) which breaks upgrades > if you have md5 checksums. > > When we originally bumped to 20 this constraint wasn't there yet (added > in January as 'small' change without impact. > > danielsh reported a broken update caused by this change on IRC.
------------------------------------------------------------------------ r1051475 | julianfoad | 2010-12-21 13:45:31 +0100 (di, 21 dec 2010) | 34 lines Enforce in the WC DB schema that a pristine text checksum always references a pristine text that is in the store. To accord with this, change the 1.6-to-1.7 upgrade code so that it populates the pristine store before the NODES table, and so that it always writes the SHA-1 checksum (not the MD-5) into the NODES table. The assertions in write_entry are a bit ugly and in one case incomplete. * subversion/libsvn_wc/wc-metadata.sql (ACTUAL_NODE): Declare 'older_checksum', 'left_checksum', 'right_checksum' as referencing a pristine text. (NODES): Declare 'checksum' as referencing a pristine text. (format: 99): Note these changes. ============================================= This adds a validation that wasn't there before. And we can't fix this in the format 28 bump, because the format 20 bump fails before we reach that. Bert