一次svn数据库的崩溃错误的解决

作者:朱金灿

来源:http://blog.csdn.net/clever101

 

           同事更新一个svn数据库,出现一个错误:打开文件系统的BDB环境句柄时出错,具体如下图:

       上网没搜到相关资料。于是想到svn是开源软件,或许从它的源码中可以查到什么相关错误信息,于是下载svn服务端的源码,下载地址是:subversion源码。从它的源码中找到是这个函数触发的:svn_fs_base__retry。但是依然没有找到思路。

 

估计这个数据库已经坏了,于是登录服务器来修复数据库,运行命令:

svnadmin recover E:\Repository\doc

提示完成修复。

最新的版本库版本是 141

 

     然后再更新svn数据库,依然出现上面提到的错误。于是又想到新建一个svn数据库,然后将旧库备份出来再导入到新库中,运行命令:svnadmin dump E:\Repository\doc   > E:\workspace\doc.dump

 

结果备份出错,提示:

svnadmin: E160029: 打开文件系统“E:/Repository/doc/db”的BDB环境句柄时出错:

svnadmin: E160029: DB_RUNRECOVERY: Fatal error, run database recovery

svnadmin: E000000: bdb: PANIC: fatal region error detected; run recovery

 

     最后只好放弃原有的svn数据库,重新建库导入数据,这算是绕开了这个错误。

 

参考文献:

1. Subversion常见问题

posted on 2014-06-23 16:53  岚之山  阅读(289)  评论(0编辑  收藏  举报

导航