"C. Michael Pilato" <cmpil...@collab.net> writes: > Aaaaand auto-upgrade strikes again. #hatethisnonfeature > > On 09/23/2012 08:33 PM, ne...@apache.org wrote: >> subversion/libsvn_wc/revision_status.c:64: (apr_err=155021) >> subversion/libsvn_wc/wc_db.c:12198: (apr_err=155021) >> subversion/libsvn_wc/wc_db_wcroot.c:609: (apr_err=155021) >> subversion/libsvn_wc/wc_db_wcroot.c:266: (apr_err=155021) >> svn: E155021: This client is too old to work with the working copy at >> '/home/neels/pat/trunk/src' (format 30). >> You need to get a newer Subversion client. For more details, see >> http://subversion.apache.org/faq.html#working-copy-format-change
Before 1.7 the auto-upgrade only happened on write operations. Every time the entries file was read it was auto-upgraded into memory but that change only became permanent when the write operation wrote the memory back to disk. For a read operation the memory was simply discarded. I suppose it might be possible to do something similar with 1.8. If we distinguish read and write operations when opening the database then we could start an extra transaction for read operations that never gets committed. All the subsequent read transactions would be nested within the uncommitted transaction. Then when the read operation closes the database the upgrade within the transaction gets discarded. Does that sound plausible? -- Certified & Supported Apache Subversion Downloads: http://www.wandisco.com/subversion/download