2012-08-28 111 views
0

我在IBM AIX上使用Jackrabbit 1.6版。與Linux操作系統類似。 Jackrabbit用於存儲我的應用程序用戶上傳的文件。當JCR在存儲庫中指定的目錄(在配置文件中)中存儲超過32767個文件/文件夾時,出現錯誤"can't create a folder"jackrabbit錯誤:無法創建文件夾

此問題已在最新版本的Jackrabbit中解決。我明白,這是操作系統的限制,但與文件中存儲兔崽子的機制調整這個問題是可以解決

或者

有沒有辦法,我可以在JCR confirgutation指定它應存儲的方式在達到32767的限制後,將文件保存在其他目錄中。

或者

有沒有辦法,我保存文件monthwise/weekwise,因爲我相信,在一個月內我會小於32767頁的文件。

任何幫助/評論表示讚賞。

感謝,

塔裏克

+0

這些文件在什麼目錄下,文件名是什麼?此外,什麼阻止你升級到最近版本的Jackrabbit? –

+0

目錄名稱可以是任何東西。被存儲的文件是由Jackrabbit自己命名的,我得到的只是一個唯一的ID,我可以在我想要檢索文件時參考它。該系統已投入生產,因此將新版本的Jackrabbit轉移並不是微不足道的。雖然如果問題在最新版本中得到解決,那麼我們可以通過特殊許可轉向更新的版本。 –

+0

同時轉移到新版本意味着我們將不得不編寫一個新的遷移過程,因爲生成唯一標識的邏輯已從版本1.6更改爲2.4 –

回答

0

我建議不使用XMLPersistenceManager,因爲if the JVM process is killed the repository might turn inconsistent。另一種方法是使用Bundle Database PM

要幫助遷移到較新版本的Jackrabbit,請參閱Backup and Migration頁面。

+0

根據與客戶的早期協議,不能使用數據庫捆綁包。所以,我只能使用文件系統。 –

+0

有沒有一種方法可以將文件按月存儲,因爲我確定知道一個月內我的文件數不會超過32767。我可以用Jackrabbit –

+0

中的一些配置來做到這一點我們也嘗試過更新版本的Jackrabbit。這裏也存在32767個元素的問題。所以最後我們計劃從1.6遷移到2.4並使用DB。有沒有一種工具可以用來將存儲庫從基於2.4的數據庫遷移到2.4數據庫。 –