a***t 发帖数: 39 | 1
it should have a commitlog, check your loginfo file under your CVSROOT, which
configure where the commitlog is, and how it collects the info... |
|
w***g 发帖数: 5958 | 2 二爷你还是别折腾haskell了。我几年前折腾过一阵haskell,没啥用还在其次,关键是
学了这个以后再看啥都不怎么顺眼了。
其实那个IO monad,本质上来说还是procedural的,不信你随便找个带网络通信的
haskell代码看,大段大段的披着functional
马甲的procedural code。下面随便贴几行用haskell写的gitlib里面的代码为证。
Monad transformer这东西我现在已经忘了怎么回事了,不过if-then-else-throw还是
直接就能看懂的。这段代码用C++/java/python哪个写都会看起来比haskell更加清楚。
copyCommit cr mref needed = do
let oid = untag cr
sha = renderOid oid
commit <- lift $ lookupCommit cr
oid2 <- parseOid sha
if HashSet.member sha needed
then do
l... 阅读全帖 |
|
t**********1 发帖数: 550 | 3 对,就是要扯fsync。不懂fsync就是不懂durability。难道不是么?
人家的wiki特意强调了fsync。你自己看看。而且强调了default是periodic。
真懂durability不会不懂fsync。
也不会闹那个commitlog写入就durable的笑话了。
看来你现在还是不懂durability。又闹了一次笑话。 |
|