Ignite 2.7 issue while upgrading java.lang.IllegalAccessError: tried to access field org.h2.util.LocalDateTimeUtils.LOCAL_DATE
Ignite 2.7 issue while upgrading java.lang.IllegalAccessError: tried to access field org.h2.util.LocalDateTimeUtils.LOCAL_DATE
嗨,在升级到 ignite 2.7 时我们遇到了这个问题,当 ignite 即将启动某些自定义缓存时会发生这种情况。
2019-01-09 19:28:04.260 UTC [SERVER] [exchange-worker-#38%fdap%] [ERROR] [,] ROOT - Critical system error detected. Will be handled accordingly to configured handler [hnd=StopNodeOrHaltFailureHandler [tryStop=false, timeout=0, super=AbstractFailureHandler [ignoredFailureTypes=[SYSTEM_WORKER_BLOCKED]]], failureCtx=FailureContext [type=SYSTEM_WORKER_TERMINATION, err=java.lang.IllegalAccessError: tried to access field org.h2.util.LocalDateTimeUtils.LOCAL_DATE from class o.a.i.i.processors.query.h2.H2DatabaseType]]
java.lang.IllegalAccessError: tried to access field org.h2.util.LocalDateTimeUtils.LOCAL_DATE from class org.apache.ignite.internal.processors.query.h2.H2DatabaseType
at org.apache.ignite.internal.processors.query.h2.H2DatabaseType.fromClass(H2DatabaseType.java:147)
at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.dbTypeFromClass(IgniteH2Indexing.java:2972)
at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2873)
at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:2809)
at org.apache.ignite.internal.processors.query.GridQueryProcessor.registerCache0(GridQueryProcessor.java:1633)
at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart0(GridQueryProcessor.java:805)
at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:866)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1330)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:2165)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:2023)
at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:924)
at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:766)
at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2667)
at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2539)
同样有一张工单https://issues.apache.org/jira/browse/IGNITE-10612,这个问题会得到解决吗?或者是否有关于如何克服这个问题的发布指南。
请帮忙...
您确定您的 H2 依赖版本正确吗?对于 AI 2.7,它应该是 com.h2database
h2
1.4.197
而不是任何其他。您发布的错误是链接错误,这是由于类路径中的库版本不正确引起的。
通过输入
<properties>
<h2.version>1.4.197</h2.version>
</properties>
正在努力解决这个问题。
因为 h2 的默认值是 1.4.199,这可能会导致其他异常。你也必须覆盖它。
嗨,在升级到 ignite 2.7 时我们遇到了这个问题,当 ignite 即将启动某些自定义缓存时会发生这种情况。
2019-01-09 19:28:04.260 UTC [SERVER] [exchange-worker-#38%fdap%] [ERROR] [,] ROOT - Critical system error detected. Will be handled accordingly to configured handler [hnd=StopNodeOrHaltFailureHandler [tryStop=false, timeout=0, super=AbstractFailureHandler [ignoredFailureTypes=[SYSTEM_WORKER_BLOCKED]]], failureCtx=FailureContext [type=SYSTEM_WORKER_TERMINATION, err=java.lang.IllegalAccessError: tried to access field org.h2.util.LocalDateTimeUtils.LOCAL_DATE from class o.a.i.i.processors.query.h2.H2DatabaseType]]
java.lang.IllegalAccessError: tried to access field org.h2.util.LocalDateTimeUtils.LOCAL_DATE from class org.apache.ignite.internal.processors.query.h2.H2DatabaseType
at org.apache.ignite.internal.processors.query.h2.H2DatabaseType.fromClass(H2DatabaseType.java:147)
at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.dbTypeFromClass(IgniteH2Indexing.java:2972)
at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2873)
at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:2809)
at org.apache.ignite.internal.processors.query.GridQueryProcessor.registerCache0(GridQueryProcessor.java:1633)
at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart0(GridQueryProcessor.java:805)
at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:866)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1330)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:2165)
at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCachesOnLocalJoin(GridCacheProcessor.java:2023)
at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.initCachesOnLocalJoin(GridDhtPartitionsExchangeFuture.java:924)
at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:766)
at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body0(GridCachePartitionExchangeManager.java:2667)
at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:2539)
同样有一张工单https://issues.apache.org/jira/browse/IGNITE-10612,这个问题会得到解决吗?或者是否有关于如何克服这个问题的发布指南。
请帮忙...
您确定您的 H2 依赖版本正确吗?对于 AI 2.7,它应该是 com.h2database
h2
1.4.197
而不是任何其他。您发布的错误是链接错误,这是由于类路径中的库版本不正确引起的。
通过输入
<properties>
<h2.version>1.4.197</h2.version>
</properties>
正在努力解决这个问题。 因为 h2 的默认值是 1.4.199,这可能会导致其他异常。你也必须覆盖它。