问题标签 [fsfs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
svn - Subversion无法读取文件中的长度行
当我提交时,我没有错误。现在我尝试签出并收到此错误
无法读取文件 'c:\svn\db\revs\0\14' 中的长度行
我已经尝试过旧版本它也不起作用。这是否意味着我在颠覆中失去了一切?
svn - 在 CentOS5 上使用哪个 subversion 文件系统?
我可以使用 Berkeley DB 或 FSFS,我应该使用哪一个?我还将在我的 Windows XP 机器上使用 TortoiseSVN 上的存储库
svn - 如何确定 Subversion 存储库是使用 BDB 还是 fsfs 后端创建的?
如果您到达一个预先存在的 Subversion 存储库,您如何确定它是使用 BDB 还是 fsfs 后端存储方法创建的?
svn - 跨服务器迁移 Subversion 存储库
我们正在移动服务器,最后一项是移动 svn 存储库。
各种 svn 存储库大约有 10 个演出。它们是使用以下命令创建的:
svnadmin create --fs-type fsfs
服务器 A(原始)具有 svn 1.4,而服务器 B(目标)具有 svn 1.6。
我的想法是用来rsync
迁移整个存储库集(它们都在服务器上的 1 个文件夹中),但我担心有些东西可能不会被迁移,或者我需要特殊的开关才能rsync
使其工作。
大多数在线教程只讨论一次移动 1 个存储库,例如 using svnadmin hotcopy
,但我需要一起移动大约 100 个左右。这是正确的方法吗?
svn - 大型变更集对 Subversion 有什么影响?
我最近向我的 svn 存储库提交了一个大型变更集(约 7,000 个文件)。这 7,000 个文件仅占使用 FSFS 后端并使用 svnserve 1.7 提供服务的存储库总大小的 5%。从那时起,在这个大型提交之后检查修订需要 20 倍的时间。
Subversion 在内部做了什么导致速度变慢,有没有办法解决这个问题?
更新
在手动检查错误修订时,我可以看到结帐开始变慢的点。结帐开始非常快速地将文件添加到工作副本(您无法足够快地读取 tty 输出)。一旦结帐到达某个目录(错误的修订版本将 2,000 个文件添加到该目录(其中已经包含 17,000 个文件)),文件被添加到工作副本的速度明显变慢(例如每秒 5 个文件),以便结帐的其余部分。坏版本之前的修订版在整个过程中非常快速地将文件添加到工作副本中。此目录中的文件每个大约 1KB。
我为版本 1.6 和 1.7 --with-debuging 和 --with-gprof 编译了我自己的版本,
svnserve
以便我们可以深入了解正在发生的事情。一些进一步的研究表明,在 svnadmin 1.7 中与内存缓存相关的一些增强实际上在这个版本中扼杀了它。即,使用 svnserve 1.6 为存储库提供服务可以解决这个问题。我猜这是在http://subversion.apache.org/docs/release-notes/1.7.html#server-performance-tuning讨论的内存缓存,基于 gprof 配置文件在错误修订时的结帐时间(以及它之前的那个)。在 rBAD 中,某些 svn fsfs 到内存缓存函数的调用次数大约是 rGOOD 中的 2,000,000,000 倍。
performance - SVN ls 命令超级慢
svn ls -v怎么可能比普通的svn ls 长约250 倍?
即使使用 file:// 模式,我使用哪种传输似乎也没有什么区别。我也尝试启用 memcached,但也没有任何改进。
有趣的是在顶层目录中这个命令是最慢的,我越深入它得到的越快。目录中有多少项目似乎并不重要。
我对客户端和服务器都使用 svn 版本 1.7.1。和 FSFS 回购格式。
这里的时间
svn - svn subversion 提交失败 无法删除 repoPath/db/transactions/nnn.n.txn/transactions
当我尝试提交到存储库时,我收到一个奇怪的错误 Can't remove 'repoPath/db/transactions/96479-3.txn/transactions'。文件的添加和更新确实会发生提交,但客户端不会更新以知道提交成功。客户端上的进一步更新会导致其自己的文件发生冲突。
在 linux 上运行的版本 1.4.2 (r22196)。使用 apache 前端 v 2.2.3
存储库实际上是我们生产系统中所有文件的副本。使用 rcp -rp sourceHost:/path ./localRepoOnQaBox 复制文件
复制后,我在 repo 路径上使用了 chown -R svn:svn
知道为什么会出现这种行为吗?
我应该补充一点,这个设置在我们的生产环境中工作,但是在将 repo 复制到我们的测试环境之后,错误就会出现。Prod 是硬硬件,QA 是 vm。
svn - 在 subversion 1.7 中读取 Berkeley DB
我有一个使用 Berkeley DB 格式的传统颠覆数据库。当我为 Subversion 加载当前的 Windows 二进制文件 (1.7.x) 时,似乎没有一个发行版支持开箱即用的 Berkeley DB。那么,由于我没有早期版本的 Subversion 的副本,我该如何检索数据呢?我不介意转换为 FSFS,但我无法进行初始转储,因为 Subversion 无法读取它(错误消息“无法为 FS 类型 'bdb' 加载模块。”)。
关于我可以下载什么来检索我的数据的任何建议?谢谢。
svn - Subversion 存储库中的“/db/txn-current”为空或不存在
我遇到了 Apache Subversion 存储库的问题,我正在寻找最佳解决方案:
我无法提交到 Subversion 存储库,并且收到错误消息:
svn: E720002: Commit failed (详情如下): svn: E720002: Can't open file 'C:\Repositories\myproject\db\txn-current': 系统找不到指定的文件。
如果我创建一个空txn-current
文件,如果提交时会出现另一个错误:
svn:E070014:提交失败(详细信息如下):svn:E070014:无法读取文件'C:\Repositories\myproject\db\txn-current':找到文件结尾
注意:假设我没有存储库的备份,因此我必须手动修复该问题。
StackOverflow 上已经讨论了相同的行为:svn commit problem, Cannot read 'd:\UC\db\txn-current': End of file found。但是我怀疑那里的答案真的很有帮助:
我不认为
\db\txn-current
手动创建并放一个0
(或任何其他整数)是一个好的解决方案。我想它可能会在不久的将来导致一些意想不到的行为,svnadmin recover
和/或svnadmin verify
不创建和/或填充txn-current
. 在这种情况下,这些命令是无能为力的。
根据FSFS 描述 \db\txn-current
文件包含下一个事务密钥号。如果我将一些整数放入文件中,那么我可以提交并且整数将增加 1。
然而,看起来放一些不相关的整数会破坏我的回购中的某些东西,我不希望这种情况发生。
“txn-current”文件是一个包含单行文本的文件,其中仅包含一个 base-36 数字。当前值将用于下一个事务名称,以及事务所基于的修订号。这个序列号确保事务名称不会被重用,即使事务被中止并且基于相同修订的新事务开始。FSFS 对该文件执行的唯一操作是“获取和递增”;“txn-current-lock”文件在此操作期间被锁定。
我应该怎么做才能\db\txn-current
正确解决问题?我应该在文件中放入什么整数?有没有其他方法可以解决这个问题?
编辑:
- 除了文件,我如何解决相同的问题(不存在或为空)
db/current
?
svn - svnadmin 没有创建正确的存储库版本
我用 svnadmin 1.7.7 创建了一个 SVN 存储库,但是存储库格式错误。我最终得到
当我尝试加载存储库时。
根据我的阅读,版本 1.7.7 应该创建一个 12 格式的存储库。我错过了什么?