我必须从 Java Web 应用程序将非常大的文件(> 10 GB)上传到 Alfresco 存储库。由于文件大小,我想使用appendContentStream
Apache Chemistry 以 Java 提供的操作 (CMIS 1.1) 使用分块上传(例如 1 GB)。
我的问题是:如何从失败的块上传中恢复?AFAIU,使用的一个要点appendContentStream
是避免在失败的情况下重新上传整个文件,但是我没有找到任何机制说:“好的,最后一个块出错了,让我们重新上传吧”。如果块上传失败,如何避免损坏的文件?
查看 Alfresco 源代码 [1] 和 [2],我看到在 4.2fa 中,新的次要版本是在每个块附加上创建的,而在 5 中,这不再是真的了。对我来说,这两种解决方案都是次优的(在 4.2f 中存在“版本污染”,在 5 中我看不到恢复路径)。
关于最佳模式的任何建议?