"C. Michael Pilato" <cmpilato_at_collab.net> writes:
> Aaaaand auto-upgrade strikes again. #hatethisnonfeature
>
> On 09/23/2012 08:33 PM, neels_at_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
Received on 2012-09-24 17:53:31 CEST