You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Semen Boikov (JIRA)" <ji...@apache.org> on 2016/01/12 07:29:39 UTC

[jira] [Assigned] (IGNITE-2359) Race in MarshallerContextImpl when working with files that store "id->clsName" mapping

     [ https://issues.apache.org/jira/browse/IGNITE-2359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Semen Boikov reassigned IGNITE-2359:
------------------------------------

    Assignee: Semen Boikov

> Race in MarshallerContextImpl when working with files that store "id->clsName" mapping
> --------------------------------------------------------------------------------------
>
>                 Key: IGNITE-2359
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2359
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: ignite-1.4
>            Reporter: Denis Magda
>            Assignee: Semen Boikov
>            Priority: Critical
>             Fix For: 1.6
>
>
> There is a possible race that happens when several nodes are being started on the same box and try to preload 'clsName' for 'id' from a file stored in a work directory.
> {noformat}
> Caused by: javax.cache.integration.CacheLoaderException: java.lang.NullPointerException: Ouch! Argument cannot be null: val
> 	at org.apache.ignite.internal.processors.cache.store.GridCacheStoreManagerAdapter.loadCache(GridCacheStoreManagerAdapter.java:509)
> 	at org.apache.ignite.internal.processors.cache.GridCacheAdapter.localLoadCache(GridCacheAdapter.java:3442)
> 	at org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtCacheAdapter.localLoadCache(GridDhtCacheAdapter.java:448)
> 	at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.localLoadCache(IgniteCacheProxy.java:372)
> 	at com.jefco.portfoliotrading.gets.loader.GGLifecycleBean.loadCache(GGLifecycleBean.java:69)
> 	at com.jefco.portfoliotrading.gets.loader.GGLifecycleBean.onLifecycleEvent(GGLifecycleBean.java:48)
> 	at org.apache.ignite.internal.IgniteKernal.notifyLifecycleBeans(IgniteKernal.java:620)
> 	... 8 more
> Caused by: java.lang.NullPointerException: Ouch! Argument cannot be null: val
> 	at org.apache.ignite.internal.util.GridArgumentCheck.notNull(GridArgumentCheck.java:48)
> 	at org.apache.ignite.internal.util.GridArgumentCheck.notNull(GridArgumentCheck.java:61)
> 	at org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.tryPutIfAbsent(GridDhtAtomicCache.java:394)
> 	at org.apache.ignite.internal.MarshallerContextImpl.registerClassName(MarshallerContextImpl.java:114)
> 	at org.apache.ignite.internal.MarshallerContextImpl.className(MarshallerContextImpl.java:165)
> 	at org.apache.ignite.internal.MarshallerContextAdapter.getClass(MarshallerContextAdapter.java:174)
> 	at org.apache.ignite.marshaller.optimized.OptimizedMarshallerUtils.classDescriptor(OptimizedMarshallerUtils.java:256)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:309)
> 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readArrayList(OptimizedObjectInputStream.java:602)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:281)
> 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
> 	at com.jefco.portfoliotrading.gets.common.CumExec.readExternal(CumExec.java:273)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readExternalizable(OptimizedObjectInputStream.java:514)
> 	at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.read(OptimizedClassDescriptor.java:803)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:315)
> 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
> 	at org.apache.ignite.lang.IgniteBiTuple.readExternal(IgniteBiTuple.java:276)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readExternalizable(OptimizedObjectInputStream.java:514)
> 	at org.apache.ignite.marshaller.optimized.OptimizedClassDescriptor.read(OptimizedClassDescriptor.java:803)
> 	at org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:315)
> 	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
> 	at org.apache.ignite.marshaller.optimized.OptimizedMarshaller.unmarshal(OptimizedMarshaller.java:240)
> 	at org.gridgain.grid.internal.processors.cache.store.local.CacheFileLocalStoreFileManager$3.apply(CacheFileLocalStoreFileManager.java:1041)
> 	at org.gridgain.grid.internal.processors.cache.store.local.CacheFileLocalStoreMap.iterate(CacheFileLocalStoreMap.java:450)
> 	at org.gridgain.grid.internal.processors.cache.store.local.CacheFileLocalStoreStripedMap.iterate(CacheFileLocalStoreStripedMap.java:214)
> 	at org.gridgain.grid.internal.processors.cache.store.local.CacheFileLocalStoreFileManager.loadAll(CacheFileLocalStoreFileManager.java:1033)
> 	at org.gridgain.grid.cache.store.local.CacheFileLocalStore.loadCache(CacheFileLocalStore.java:581)
> 	at org.apache.ignite.internal.processors.cache.store.GridCacheStoreManagerAdapter.loadCache(GridCacheStoreManagerAdapter.java:483)
> 	... 14 more
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)