Greg Stein wrote on Sun, Jun 26, 2011 at 15:11:43 -0400: > On Jun 26, 2011 9:45 AM, "Daniel Shahaf" <d...@daniel.shahaf.name> wrote: > > > > Daniel Shahaf wrote on Sun, Jun 26, 2011 at 16:21:00 +0300: > > > Running it: > > > [[[ > > > % for i in foo-*; do echo ./$i; ./$i; done > > > ./foo-3.7.6.3 > > > ./foo-3.7.7 > > > Error 17: database schema has changed > > > % > > > ]]] > > > > > > > Correction: > > > > [[[ > > % for i in foo-*; do rm foo.db && echo $i && ./$i; done > > foo-3.7.6.3 > > foo-3.7.7 > > Error 17: database schema has changed > > ]]] > > Wait a second. You rm the database?
Yes, so that both foo-3.7.6.3 and foo-3.7.7 start with "foo.db" non-existing. Comparing a run of foo-3.7.6.3 with "foo.db" not preexisting to a run of foo-3.7.7 with "foo.db" yes preexisting would be bogus. > I thought this was a bug with carrying > databases over to the new release? > The reproductions so far are about creating databases, not about upgrading them. It seems that sqlite-3.7.7 requires a "PRAGMA case_sensitive_like=1;" to be in the same transaction as a "PRAGMA user_version = user_version+1;". Since svn_sqlite__open() doesn't change USER_VERSION, it fails to create the database. > Cheers, > -g