Error with ScanQuery

classic Classic list List threaded Threaded
14 messages Options
Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

Error with ScanQuery

I have an existing Ignite (v2.2) cache using the Persistency layer that contains a number of cache entries.

 

While using a test application on top of the cache I experienced an issue where the local computer ran out of virtual memory and essentially crashed (long story).

 

I have since resolved the virtual memory issue and am attempting to re-run my application; however it is stating it cannot find information that it could find previously in the Ignite persistent cache. The cache was not being written to at the time of the crash, only read from.

 

I wanted to see if I could dump all the keys from the cache to test if the information was present or not, and found some code that led me to write this:

 

            // Obtain all the keys and write them into the file "C:\Temp\AllRaptorIgniteCacheKeys.txt"

 

            using (var outFile = new FileStream(@"C:\Temp\AllRaptorIgniteCacheKeys.txt", FileMode.Create))

            {

                using (var writer = new StreamWriter(outFile))

                {

                    IIgnite ignite = Ignition.TryGetIgnite(RaptorGrids.RaptorGridName());

 

                    ICache<String, MemoryStream> cache = ignite.GetCache<String, MemoryStream>(RaptorCaches.ImmutableNonSpatialCacheName());

 

                    var scanQuery = new ScanQuery<String, MemoryStream>();

                    IQueryCursor<ICacheEntry<String, MemoryStream>> queryCursor = cache.Query(scanQuery);

 

                    foreach (ICacheEntry<String, MemoryStream> cacheEntry in queryCursor)   ß Error here

                    {

                        writer.Write(cacheEntry.Key);

                    }

                }

            }

 

 

This compiles, but when it runs it fails at the line marked ‘ß Error here’ with the following exception:

 

   at Apache.Ignite.Core.Impl.Unmanaged.UnmanagedCallbacks.Error(Void* target, Int32 errType, SByte* errClsChars, Int32 errClsCharsLen, SByte* errMsgChars, Int32 errMsgCharsLen, SByte* stackTraceChars, Int32 stackTraceCharsLen, Void* errData, Int32 errDataLen)

   at Apache.Ignite.Core.Impl.Unmanaged.IgniteJniNativeMethods.TargetInStreamOutStream(Void* ctx, Void* target, Int32 opType, Int64 inMemPtr, Int64 outMemPtr)

   at Apache.Ignite.Core.Impl.PlatformTarget.DoOutInOp[TR](Int32 type, Action`1 outAction, Func`2 inAction)

   at Apache.Ignite.Core.Impl.Binary.BinaryProcessor.GetTypeName(Int32 id)

   at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(Boolean userType, Int32 typeId, Boolean requiresType, String typeName, Type knownType)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadFullObject[T](Int32 pos, Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadBinaryObject[T](Boolean doDetach)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

   at Apache.Ignite.Core.Impl.Cache.Query.QueryCursor`2.Read(BinaryReader reader)

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.ConvertGetBatch(IBinaryStream stream)

   at Apache.Ignite.Core.Impl.PlatformTarget.DoInOp[T](Int32 type, Func`2 action)

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.RequestBatch()

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.MoveNext()

   at VSS.Raptor.IgnitePOC.TestApp.Form1.button1_Click(Object sender, EventArgs e) in C:\Dev\VSS.Raptor.IgnitePOC\WindowsFormsApplication1\Form1.cs:line 252

 

When I inspect the ‘Current’ member of the  scanQuery variable I see this error displayed for it (which is present before executing the ScanQuery):

 

                                '((Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor<Apache.Ignite.Core.Cache.ICacheEntry<string, System.IO.MemoryStream>>)queryCursor).Current' threw an exception of type 'System.InvalidOperationException'

 

The specific error reported by the Visual Studio IDE is:

 

 

 

I’m a bit puzzled what is happening. It seems I can’t tell if there is still information in the cache because the ScanQuery does not work. I don’t know if this is because of corruption or damage in the cache, or because I’m using a ScanQuery with a null filter or if something has changed to make a <string, MemoryStream> type cache fail to map that object type onto the members in the cache (which is a <String, MemoryStream> type cache).

 

Thanks,

Raymond.

 

dkarachentsev dkarachentsev
Reply | Threaded
Open this post in threaded view
|

Re: Error with ScanQuery

Hi Raymond,

Could you please attach full log and config for failed node?

Thanks!
-Dmitry



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

Re: Error with ScanQuery

I can do that tomorrow.

In the meantime, can you speak to what that error means?

Thanks,
Raymond.

Sent from my iPhone

> On 16/10/2017, at 9:18 PM, dkarachentsev <[hidden email]> wrote:
>
> Hi Raymond,
>
> Could you please attach full log and config for failed node?
>
> Thanks!
> -Dmitry
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
ptupitsyn ptupitsyn
Reply | Threaded
Open this post in threaded view
|

Re: Error with ScanQuery

Hi Raymond,

1) Please attach full exception details, including all inner exceptions (can be obtained with ex.ToString())

2) Storing MemoryStream in cache is not a very good idea: there is a lot of unnecessary overhead 
(underlying buffer is usually bigger that real data, there is some state, etc).
Consider storing byte[] instead (call MemoryStream.ToArray()).

Thanks,
Pavel

On Mon, Oct 16, 2017 at 11:46 AM, Raymond Wilson <[hidden email]> wrote:
I can do that tomorrow.

In the meantime, can you speak to what that error means?

Thanks,
Raymond.

Sent from my iPhone

> On 16/10/2017, at 9:18 PM, dkarachentsev <[hidden email]> wrote:
>
> Hi Raymond,
>
> Could you please attach full log and config for failed node?
>
> Thanks!
> -Dmitry
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/

dkarachentsev dkarachentsev
Reply | Threaded
Open this post in threaded view
|

Re: Error with ScanQuery

Raymond,

Without logs I see just that deserialization failed by some reason. Actually
I more interested in exceptions that come from Ignite's java part if any.

Thanks!
-Dmitry



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

Hi Dmitry,

 

I don’t seem to get any Java exceptions reported in the log.

 

Below is the inner exception detail from the IDE error dialog:

 

class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

                ... 1 more

 

From:

 

 

Raymond.

 

-----Original Message-----
From: dkarachentsev [mailto:[hidden email]]
Sent: Monday, October 16, 2017 11:18 PM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Raymond,

 

Without logs I see just that deserialization failed by some reason. Actually I more interested in exceptions that come from Ignite's java part if any.

 

Thanks!

-Dmitry

 

 

 

--

Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

In reply to this post by dkarachentsev

Below is output from ex.ToString()

 

---------------------------

 

---------------------------

Apache.Ignite.Core.Binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370] ---> Apache.Ignite.Core.Common.JavaException: class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

                ... 1 more

 

 

   --- End of inner exception stack trace ---

   at Apache.Ignite.Core.Impl.Unmanaged.UnmanagedCallbacks.Error(Void* target, Int32 errType, SByte* errClsChars, Int32 errClsCharsLen, SByte* errMsgChars, Int32 errMsgCharsLen, SByte* stackTraceChars, Int32 stackTraceCharsLen, Void* errData, Int32 errDataLen)

   at Apache.Ignite.Core.Impl.Unmanaged.IgniteJniNativeMethods.TargetInStreamOutStream(Void* ctx, Void* target, Int32 opType, Int64 inMemPtr, Int64 outMemPtr)

   at Apache.Ignite.Core.Impl.PlatformTarget.DoOutInOp[TR](Int32 type, Action`1 outAction, Func`2 inAction)

   at Apache.Ignite.Core.Impl.Binary.BinaryProcessor.GetTypeName(Int32 id)

   at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(Boolean userType, Int32 typeId, Boolean requiresType, String typeName, Type knownType)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadFullObject[T](Int32 pos, Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadBinaryObject[T](Boolean doDetach)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

   at Apache.Ignite.Core.Impl.Cache.Query.QueryCursor`2.Read(BinaryReader reader)

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.ConvertGetBatch(IBinaryStream stream)

   at Apache.Ignite.Core.Impl.PlatformTarget.DoInOp[T](Int32 type, Func`2 action)

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.RequestBatch()

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.MoveNext()

   at VSS.Raptor.IgnitePOC.TestApp.Form1.button1_Click(Object sender, EventArgs e) in C:\Dev\VSS.Raptor.IgnitePOC\WindowsFormsApplication1\Form1.cs:line 254

---------------------------

OK  

---------------------------

 

From: Raymond Wilson [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 12:17 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

Hi Dmitry,

 

I don’t seem to get any Java exceptions reported in the log.

 

Below is the inner exception detail from the IDE error dialog:

 

class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

                ... 1 more

 

From:

 

 

Raymond.

 

-----Original Message-----
From: dkarachentsev [[hidden email]]
Sent: Monday, October 16, 2017 11:18 PM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Raymond,

 

Without logs I see just that deserialization failed by some reason. Actually I more interested in exceptions that come from Ignite's java part if any.

 

Thanks!

-Dmitry

 

 

 

--

Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

In reply to this post by ptupitsyn

Hi Pavel,

 

Thanks for the tips on MemoryStream versus byte[]. I’ll look into it.

 

Thanks,

Raymond.

 

 

From: Pavel Tupitsyn [mailto:[hidden email]]
Sent: Monday, October 16, 2017 11:00 PM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Hi Raymond,

 

1) Please attach full exception details, including all inner exceptions (can be obtained with ex.ToString())

 

2) Storing MemoryStream in cache is not a very good idea: there is a lot of unnecessary overhead 

(underlying buffer is usually bigger that real data, there is some state, etc).

Consider storing byte[] instead (call MemoryStream.ToArray()).

 

Thanks,

Pavel

 

On Mon, Oct 16, 2017 at 11:46 AM, Raymond Wilson <[hidden email]> wrote:

I can do that tomorrow.

In the meantime, can you speak to what that error means?

Thanks,
Raymond.

Sent from my iPhone


> On 16/10/2017, at 9:18 PM, dkarachentsev <[hidden email]> wrote:
>
> Hi Raymond,
>
> Could you please attach full log and config for failed node?
>
> Thanks!
> -Dmitry
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/

 

Alexey Kukushkin Alexey Kukushkin
Reply | Threaded
Open this post in threaded view
|

Re: Error with ScanQuery

Raymond,

Do you have native or 3-rd party persistence? If you have 3rd-party persistence, then this "Requesting mapping from grid failed" error I see in your screenshot was fixed in release 2.3.


Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

I am using the Ignite native persistence introduced in the 2.* releases.

 

From: Alexey Kukushkin [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 12:48 AM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Raymond,

 

Do you have native or 3-rd party persistence? If you have 3rd-party persistence, then this "Requesting mapping from grid failed" error I see in your screenshot was fixed in release 2.3.

 

 

Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

In reply to this post by Alexey Kukushkin

I just read through the Jira ticket and wonder if this is the underlying cause for what I am seeing as I have KeepBinaryInStore=false in my configuration.

 

From: Raymond Wilson [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 9:49 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

I am using the Ignite native persistence introduced in the 2.* releases.

 

From: Alexey Kukushkin [[hidden email]]
Sent: Tuesday, October 17, 2017 12:48 AM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Raymond,

 

Do you have native or 3-rd party persistence? If you have 3rd-party persistence, then this "Requesting mapping from grid failed" error I see in your screenshot was fixed in release 2.3.

 

 

dsetrakyan dsetrakyan
Reply | Threaded
Open this post in threaded view
|

Fwd: Error with ScanQuery

In reply to this post by dkarachentsev
Resending to the user@ list.

---------- Forwarded message ----------
From: Raymond Wilson <[hidden email]>
Date: Mon, Oct 16, 2017 at 8:35 PM
Subject: RE: Error with ScanQuery
To: Dmitriy Setrakyan <[hidden email]>
Cc: [hidden email]


Dmitry, Pavel,

 

Attached are the logs from running the system from scratch, activating the cluster and performing the operation that leads to the exception, then shutting down the grid.

 

The WindowsFormsApplication1 log is the context which produces the exception.

 

Thanks,

Raymond.

 

From: Raymond Wilson [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 12:22 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

Below is output from ex.ToString()

 

---------------------------

 

---------------------------

Apache.Ignite.Core.Binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370] ---> Apache.Ignite.Core.Common.JavaException: class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

 

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

 

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

 

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

 

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

 

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

 

                ... 1 more

 

 

 

   --- End of inner exception stack trace ---

 

   at Apache.Ignite.Core.Impl.Unmanaged.UnmanagedCallbacks.Error(Void* target, Int32 errType, SByte* errClsChars, Int32 errClsCharsLen, SByte* errMsgChars, Int32 errMsgCharsLen, SByte* stackTraceChars, Int32 stackTraceCharsLen, Void* errData, Int32 errDataLen)

 

   at Apache.Ignite.Core.Impl.Unmanaged.IgniteJniNativeMethods.TargetInStreamOutStream(Void* ctx, Void* target, Int32 opType, Int64 inMemPtr, Int64 outMemPtr)

 

   at Apache.Ignite.Core.Impl.PlatformTarget.DoOutInOp[TR](Int32 type, Action`1 outAction, Func`2 inAction)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryProcessor.GetTypeName(Int32 id)

 

   at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(Boolean userType, Int32 typeId, Boolean requiresType, String typeName, Type knownType)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadFullObject[T](Int32 pos, Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadBinaryObject[T](Boolean doDetach)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Cache.Query.QueryCursor`2.Read(BinaryReader reader)

 

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.ConvertGetBatch(IBinaryStream stream)

 

   at Apache.Ignite.Core.Impl.PlatformTarget.DoInOp[T](Int32 type, Func`2 action)

 

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.RequestBatch()

 

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.MoveNext()

 

   at VSS.Raptor.IgnitePOC.TestApp.Form1.button1_Click(Object sender, EventArgs e) in C:\Dev\VSS.Raptor.IgnitePOC\WindowsFormsApplication1\Form1.cs:line 254

---------------------------

OK  

---------------------------

 

From: Raymond Wilson [[hidden email]]
Sent: Tuesday, October 17, 2017 12:17 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

Hi Dmitry,

 

I don’t seem to get any Java exceptions reported in the log.

 

Below is the inner exception detail from the IDE error dialog:

 

class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

                ... 1 more

 

From:

 

 

Raymond.

 

-----Original Message-----
From: dkarachentsev [[hidden email]]
Sent: Monday, October 16, 2017 11:18 PM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Raymond,

 

Without logs I see just that deserialization failed by some reason. Actually I more interested in exceptions that come from Ignite's java part if any.

 

Thanks!

-Dmitry

 

 

 

--

Sent from: http://apache-ignite-users.70518.x6.nabble.com/



Logs.zip (130K) Download Attachment
Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

In reply to this post by ptupitsyn

I made the changes to store cache items as byte[] instead of MemoryStream which has reduced the overall storage requirement by around 30%, which is a nice result 😊

 

Thanks!

Raymond.

 

From: Raymond Wilson [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 12:22 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

Hi Pavel,

 

Thanks for the tips on MemoryStream versus byte[]. I’ll look into it.

 

Thanks,

Raymond.

 

 

From: Pavel Tupitsyn [[hidden email]]
Sent: Monday, October 16, 2017 11:00 PM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Hi Raymond,

 

1) Please attach full exception details, including all inner exceptions (can be obtained with ex.ToString())

 

2) Storing MemoryStream in cache is not a very good idea: there is a lot of unnecessary overhead 

(underlying buffer is usually bigger that real data, there is some state, etc).

Consider storing byte[] instead (call MemoryStream.ToArray()).

 

Thanks,

Pavel

 

On Mon, Oct 16, 2017 at 11:46 AM, Raymond Wilson <[hidden email]> wrote:

I can do that tomorrow.

In the meantime, can you speak to what that error means?

Thanks,
Raymond.

Sent from my iPhone


> On 16/10/2017, at 9:18 PM, dkarachentsev <[hidden email]> wrote:
>
> Hi Raymond,
>
> Could you please attach full log and config for failed node?
>
> Thanks!
> -Dmitry
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/

 

Raymond Wilson Raymond Wilson
Reply | Threaded
Open this post in threaded view
|

RE: Error with ScanQuery

In reply to this post by dsetrakyan

Was there anything in the logs that looked out of place?

 

From: Dmitriy Setrakyan [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 5:25 PM
To: user <[hidden email]>
Subject: Fwd: Error with ScanQuery

 

Resending to the user@ list.

 

---------- Forwarded message ----------
From: Raymond Wilson <[hidden email]>
Date: Mon, Oct 16, 2017 at 8:35 PM
Subject: RE: Error with ScanQuery
To: Dmitriy Setrakyan <[hidden email]>
Cc: [hidden email]

Dmitry, Pavel,

 

Attached are the logs from running the system from scratch, activating the cluster and performing the operation that leads to the exception, then shutting down the grid.

 

The WindowsFormsApplication1 log is the context which produces the exception.

 

Thanks,

Raymond.

 

From: Raymond Wilson [mailto:[hidden email]]
Sent: Tuesday, October 17, 2017 12:22 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

Below is output from ex.ToString()

 

---------------------------

 

---------------------------

Apache.Ignite.Core.Binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370] ---> Apache.Ignite.Core.Common.JavaException: class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

 

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

 

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

 

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

 

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

 

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

 

                ... 1 more

 

 

 

   --- End of inner exception stack trace ---

 

   at Apache.Ignite.Core.Impl.Unmanaged.UnmanagedCallbacks.Error(Void* target, Int32 errType, SByte* errClsChars, Int32 errClsCharsLen, SByte* errMsgChars, Int32 errMsgCharsLen, SByte* stackTraceChars, Int32 stackTraceCharsLen, Void* errData, Int32 errDataLen)

 

   at Apache.Ignite.Core.Impl.Unmanaged.IgniteJniNativeMethods.TargetInStreamOutStream(Void* ctx, Void* target, Int32 opType, Int64 inMemPtr, Int64 outMemPtr)

 

   at Apache.Ignite.Core.Impl.PlatformTarget.DoOutInOp[TR](Int32 type, Action`1 outAction, Func`2 inAction)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryProcessor.GetTypeName(Int32 id)

 

   at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(Boolean userType, Int32 typeId, Boolean requiresType, String typeName, Type knownType)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadFullObject[T](Int32 pos, Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadBinaryObject[T](Boolean doDetach)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride)

 

   at Apache.Ignite.Core.Impl.Cache.Query.QueryCursor`2.Read(BinaryReader reader)

 

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.ConvertGetBatch(IBinaryStream stream)

 

   at Apache.Ignite.Core.Impl.PlatformTarget.DoInOp[T](Int32 type, Func`2 action)

 

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.RequestBatch()

 

   at Apache.Ignite.Core.Impl.Cache.Query.AbstractQueryCursor`1.MoveNext()

 

   at VSS.Raptor.IgnitePOC.TestApp.Form1.button1_Click(Object sender, EventArgs e) in C:\Dev\VSS.Raptor.IgnitePOC\WindowsFormsApplication1\Form1.cs:line 254

---------------------------

OK  

---------------------------

 

From: Raymond Wilson [[hidden email]]
Sent: Tuesday, October 17, 2017 12:17 AM
To: '[hidden email]' <[hidden email]>
Subject: RE: Error with ScanQuery

 

Hi Dmitry,

 

I don’t seem to get any Java exceptions reported in the log.

 

Below is the inner exception detail from the IDE error dialog:

 

class org.apache.ignite.binary.BinaryObjectException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:126)

                at org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutStream(PlatformTargetProxyImpl.java:155)

Caused by: java.lang.ClassNotFoundException: Requesting mapping from grid failed for [platformId=1, typeId=349095370]

                at org.apache.ignite.internal.MarshallerContextImpl.getClassName(MarshallerContextImpl.java:383)

                at org.apache.ignite.internal.processors.platform.binary.PlatformBinaryProcessor.processInStreamOutStream(PlatformBinaryProcessor.java:120)

                ... 1 more

 

From:

 

 

Raymond.

 

-----Original Message-----
From: dkarachentsev [[hidden email]]
Sent: Monday, October 16, 2017 11:18 PM
To: [hidden email]
Subject: Re: Error with ScanQuery

 

Raymond,

 

Without logs I see just that deserialization failed by some reason. Actually I more interested in exceptions that come from Ignite's java part if any.

 

Thanks!

-Dmitry

 

 

 

--

Sent from: http://apache-ignite-users.70518.x6.nabble.com/