On Fri, Mar 25, 2005 at 10:51:34AM +0300, Ivan Evtuhovich wrote: > svn: Commit failed (details follow): > svn: Unable to open an ra_local session to URL > svn: Unable to open repository 'file:///home/vanya/subversion/balance' > svn: Berkeley DB error while opening environment for filesystem > /home/vanya/subversion/db: > DB_VERSION_MISMATCH: Database environment version mismatch > svn: bdb: Program version 4.3 doesn't match environment version > > Я понимаю, почему это так, но вот как безболезненно откатиться назад, > чтобы хотя бы dump сделать, я не догадался. > > Кто-нибудь знает решение это проблемы? Иногда бинари слишком жестко проверяют версии библиотек, с которыми они были слинкованы на стадии компиляции. Вообще говоря, это самодеятельность, которая страхует разве что авторов зависимого софта от некомпетентных баг-репортов, которые шлют пользователи без башни. С другой стороны, тех, кто без башни -- есть куда послать, а это вроде как хорошо. Вот последний патч, приложенный к perl-BerkeleyDB: libberkeleydb-perl (0.26-3) unstable; urgency=high * Patched to work with all patchlevels of libdb, thanks to Brendan O'Dea. (Closes: #290988) -- Marco d'Itri Wed, 19 Jan 2005 01:47:23 +0100 --- libberkeleydb-perl-0.26.orig/BerkeleyDB.xs +++ libberkeleydb-perl-0.26/BerkeleyDB.xs @@ -3894,7 +3894,7 @@ (void)db_version(&Major, &Minor, &Patch) ; /* Check that the versions of db.h and libdb.a are the same */ if (Major != DB_VERSION_MAJOR || Minor != DB_VERSION_MINOR - || Patch != DB_VERSION_PATCH) + ) croak("\nBerkeleyDB needs compatible versions of libdb & db.h\n\tyou have db.h version %d.%d.%d and libdb version %d.%d.%d\n", DB_VERSION_MAJOR, DB_VERSION_MINOR, DB_VERSION_PATCH, Major, Minor, Patch) ;