You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Alexandr Kuramshin (JIRA)" <ji...@apache.org> on 2017/01/11 04:36:58 UTC

[jira] [Created] (IGNITE-4538) BinaryObjectImpl: lack of context information upon deserialization

Alexandr Kuramshin created IGNITE-4538:
------------------------------------------

             Summary: BinaryObjectImpl: lack of context information upon deserialization
                 Key: IGNITE-4538
                 URL: https://issues.apache.org/jira/browse/IGNITE-4538
             Project: Ignite
          Issue Type: Improvement
          Components: binary
    Affects Versions: 1.8, 1.7
            Reporter: Alexandr Kuramshin


Taking an error we don't know the cache name was accessed, the type of BinaryClassDescriptor was used, and the entry was accessed (the key of an entry should be logged with respect to the *include sensitive* system property).

Such context information should be appended by wrapping inner exception on the every key stack frame.

{noformat}
org.apache.ignite.binary.BinaryObjectException: Unexpected flag value [pos=24, expected=4, actual=9]
                at org.apache.ignite.internal.binary.BinaryReaderExImpl.checkFlagNoHandles(BinaryReaderExImpl.java:1423) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryReaderExImpl.readLongNullable(BinaryReaderExImpl.java:723) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryFieldAccessor$DefaultFinalClassAccessor.readFixedType(BinaryFieldAccessor.java:677) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryFieldAccessor$DefaultFinalClassAccessor.read(BinaryFieldAccessor.java:639) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:818) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1481) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryObjectImpl.deserializeValue(BinaryObjectImpl.java:717) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.binary.BinaryObjectImpl.value(BinaryObjectImpl.java:143) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.CacheObjectContext.unwrapBinary(CacheObjectContext.java:272) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.CacheObjectContext.unwrapBinaryIfNeeded(CacheObjectContext.java:160) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.CacheObjectContext.unwrapBinaryIfNeeded(CacheObjectContext.java:147) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.GridCacheContext.unwrapBinaryIfNeeded(GridCacheContext.java:1706) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$PeekValueExpiryAwareIterator.advance(GridCacheQueryManager.java:2875) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$PeekValueExpiryAwareIterator.<init>(GridCacheQueryManager.java:2814) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$PeekValueExpiryAwareIterator.<init>(GridCacheQueryManager.java:2752) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$5.<init>(GridCacheQueryManager.java:863) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.scanIterator(GridCacheQueryManager.java:863) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.scanQueryLocal(GridCacheQueryManager.java:1436) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.query.GridCacheQueryAdapter.executeScanQuery(GridCacheQueryAdapter.java:552) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.GridCacheAdapter.igniteIterator(GridCacheAdapter.java:4115) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.GridCacheAdapter.igniteIterator(GridCacheAdapter.java:4092) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
                at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.iterator(IgniteCacheProxy.java:1979) ~[ignite-core-1.10.1.ea7.jar:1.10.1.ea7]
{noformat}



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