今天在用 TortoiseSVN 把支線(branch) 專案合併到 trunk 的時候發現內建的合併(Merge)功能根本無效。後來換了 Kdiff3、WinMerge 來做合併的狀況也是一樣。
反正檔案只有一個,乾脆就先手動合併之後再升級最新的 TortoiseSVN 1.3.0-RC2 試試,結果反而發現只要一讀取檔案庫的根目錄就當在那邊了。後來再 Downgrade 到 TortoiseSVN 1.2.6 狀況也還是一樣。
這時只好改用 svnadmin 檢查一下,看起來似乎檔案庫出了問題,出現 Invalid Argument 的訊息,而且還出現要用 Berkeley DB 4.2 環境的提示。
從 Subversion 1.20 開始,如果拿 Windows 當 Subversion Server ,Berkeley DB 依官方說法是要升級到 4.3 ,出現要 BDB 4.2 的訊息真的匪夷所思。
於是我就先把 Subversion 的版本從 1.2.0 升級到 1.2.3 ,這時果然剛剛的出現的 BDB 4.2 錯誤訊息不見了,而檔案庫(repeository) 用 svnadmin 來存取的狀況也跟 TortoiseSVN 一樣,完全沒有任何反應(就是當在那邊)。
至少跟 TortoiseSVN 的反應一樣就好辦了,索性把 Berkeley DB 的記憶體暫存檔(db/__db.*) 全給刪了,這時 svnadmin 可以正常存取檔案庫(repeository)了,使用 TortoiseSVN 果然也正常了。
至於發生的原因應該是在 TortoiseSVN 1.3.0-RC2 讀取檔案庫的時候不知道做了什麼事,導致 TortoiseSVN Crash 掉後出現了回報錯誤的視窗,再來檔案庫就無法再讀取了。
註: 剛剛看到 Suberversion 出 1.3.0 了,只是現在案子趕,沒時間升級了。
7 comments On Subversion Berkeley DB 讀取當機的處理方式
用 fsfs 吧… BerkeleyDB 已經是過去式了 :p
藉由這篇來發表一下我看了一個下午貴站文章的心得…
心得就是:「有股想放棄寫程式的衝動…」
太強了,真的太強了,我不算初學者,但是當我看到這一篇,從頭到尾,還真沒一個字看得懂,這種等級差距,讓我想到了高中時,那位用BASIC寫出簡易三國志遊戲的同學。如果到今天,我和他就會是這種差距.
看來寫程式充其量只能拿來當興趣,要想拿來當工作,在社會上要怎麼跟那些已經寫了十幾二十年,如NEO這樣的高手拼??
我不會放棄寫程式,這是我的興趣,但是我要放棄這個長久以來希望以興趣結合工作的目標,真的差太多了,早點覺悟,重新思考未來的方向才是上策!!
應該要感謝貴站讓我今日無意逛到,不然我的夢還醒不了~
其實看不懂這篇不見得要放棄寫程式,做任何一件事情重點是看你是否願意100%投入,熱情與專注可以讓你排除萬難,能把興趣用在工作上是相當幸福的事情,祝你成功!
gslin:
感謝提醒~等有空一定換! Orz
ak47:
別想太多,經驗是累積出來的,對寫程式有興趣及熱情是最珍貴的寶物,真的不應該放棄。(甚至很多人連自己喜歡做什麼都搞不清楚)
網路上高手非常的多(上面第一個留言的 gslin 正好可以當高手的典範 ^^),多到我也常常覺的自己很渺小,在網路上看不懂的文章我也常常碰到,只是用不到的時候也沒必要強迫自己去完全看懂,大概知道有這麼回事就好了。通常技術玩到最後,就只剩「”有看過”跟”沒看過”」或「有”碰”過跟沒”碰”過」二種。
我個人覺的技術只是一種工具,對於任何技術上的創新及熱誠才是最大的價值所在。
victor:
對呀,興趣拿來當工作真的是人生再幸福不過的事了。^^
(通常能成功致富的也大多是這種人)
gslin:
昨天把 BerkeleyDB 改為 fsfs 了,也順便試著升級 TortoiseSVN 1.3.0 ,剛剛測試也正常了。^^
看來沒人唸真的沒動力…Orz
我不會放棄寫程式,這是我的興趣,但是我要放棄這個長久以來希望以興趣結合工作的目標,真的差太多了,早點覺悟,重新思考未來的方向才是上策!!
怎麼說Berkeley DB已成為過去呀??
就BDB就感覺得會比FSFS強,之前是聽說
過FSFS 當資料越多速度就會變的很慢?