Artifactory,Jackrabbit 缓存出现阻塞错误

Artifactory, blocking error with Jackrabbit cache

几天前,我的 Artifactory(版本 2.3.2)开始报告数据存储区垃圾收集和搜索错误,两者都导致 JackRabbit 缓存抛出根异常:

o.a.j.JcrServiceImpl:1037) - Datastore garbage collector execution failed.
java.lang.ArrayIndexOutOfBoundsException: -2
at org.apache.jackrabbit.core.cache.ConcurrentCache.shrinkIfNeeded(ConcurrentCache.java:241) [jackrabbit-core-jfrog-2.2.1.jar:2.2.1]

今天早上,Artifactory 根本没有响应,所以我重新启动了它,但它失败了,之后又失败了,最后一个例外是:

Caused by: java.lang.NullPointerException: null
at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:767) [na:1.6.0_25-ea]
at java.util.TimeZone.getTimeZone(TimeZone.java:471) [na:1.6.0_25-ea]
at java.util.TimeZone.getTimeZone(TimeZone.java:465) [na:1.6.0_25-ea]
at org.apache.jackrabbit.core.persistence.util.BundleReader.<clinit>(BundleReader.java:56) [jackrabbit-core-jfrog-2.2.1.jar:2.2.1]
... 82 common frames omitted

Jackrabbit 似乎是这里的嫌疑犯,但我很难解决这个问题,希望你们能解决。 =)

顺便说一句,我使用 Derby 作为元数据存储,并且使用文件系统来存储人工制品。

谢谢。

版本 2.x 不再受支持(特别是因为 Jackrabbit 问题)。 版本 3 更快(高达数十倍)并且更稳定。 请升级。