You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ignite TC Bot (JIRA)" <ji...@apache.org> on 2019/03/29 11:38:00 UTC

[jira] [Commented] (IGNITE-8588) .NET: Serialization issue when derived type hides base type member

    [ https://issues.apache.org/jira/browse/IGNITE-8588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16804848#comment-16804848 ] 

Ignite TC Bot commented on IGNITE-8588:
---------------------------------------

{panel:title=--&gt; Run :: All: Possible Blockers|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}
{color:#d04437}ZooKeeper (Discovery) 4{color} [[tests 1|https://ci.ignite.apache.org/viewLog.html?buildId=3446240]]
* ZookeeperDiscoverySpiTestSuite4: IgniteCachePutRetryTransactionalSelfTest.testExplicitTransactionRetriesStoreEnabled - 0,0% fails in last 385 master runs.

{color:#d04437}PDS 2{color} [[tests 0 TIMEOUT , Exit Code |https://ci.ignite.apache.org/viewLog.html?buildId=3446226]]
* ClientAffinityAssignmentWithBaselineTest.testClientJoinCacheLongTransactionNodeStart (last started)

{panel}
[TeamCity *--&gt; Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=3446259&amp;buildTypeId=IgniteTests24Java8_RunAll]

> .NET: Serialization issue when derived type hides base type member
> ------------------------------------------------------------------
>
>                 Key: IGNITE-8588
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8588
>             Project: Ignite
>          Issue Type: Bug
>          Components: platforms
>    Affects Versions: 2.4
>            Reporter: Pavel Tupitsyn
>            Assignee: Alexandr Shapkin
>            Priority: Major
>              Labels: .NET
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> The following class structure causes an exception that is hard to understand (when putting instance of B into Ignite cache):
> {code}
> public class A
> {
>   public int bob;
> } 
> public class B : A
> {
>   public int bob;
> }
> {code}
> Exception:
> {code}
>  Apache.Ignite.Core.Binary.BinaryObjectException: Conflicting field IDs [type=SubGridsRequestArgument, field1=Filters, field2=Filters, fieldId=-854547461]
>    at Apache.Ignite.Core.Impl.Binary.BinaryReflectiveSerializerInternal.Register(Type type, Int32 typeId, IBinaryNameMapper converter, IBinaryIdMapper idMapper, Boolean forceTimestamp)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.GetSerializer(BinaryConfiguration cfg, BinaryTypeConfiguration typeCfg, Type type, Int32 typeId, IBinaryNameMapper nameMapper, IBinaryIdMapper idMapper, ILogger log)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.AddUserType(Type type, Int32 typeId, String typeName, Boolean registered, BinaryFullTypeDescriptor desc)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.RegisterType(Type type, BinaryFullTypeDescriptor desc)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(Type type)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T obj)
>    at Apache.Ignite.Core.Impl.Deployment.PeerLoadingExtensions.WriteWithPeerDeployment(BinaryWriter writer, Object o)
>    at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer`1.WriteBinary[T1](T1 obj, BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T obj)
>    at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer`1.WriteBinary[T1](T1 obj, BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T obj)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.WriteObjectDetached[T](T o)
>    at Apache.Ignite.Core.Impl.Compute.ComputeImpl.WriteJob(IComputeJob job, BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.Compute.ComputeImpl.<>c__DisplayClass1d`3.<ExecuteClosures0>b__1a(BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.PlatformTargetAdapter.WriteToStream(Action`1 action, IBinaryStream stream, Marshaller marsh)
>    at Apache.Ignite.Core.Impl.PlatformJniTarget.InStreamOutObject(Int32 type, Action`1 writeAction)
>    at Apache.Ignite.Core.Impl.Compute.ComputeImpl.ExecuteClosures0[TArg,TJobRes,TReduceRes](IComputeTask`3 task, IComputeJob job, IEnumerable`1 jobs, Int32 opId, Int32 jobsCount, Action`1 writeAction)
>    --- End of inner exception stack trace ---
>    at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
>    at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
>    at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout)
>    at VSS.TRex.GridFabric.Requests.SubGridRequestsProgressive`2.Execute() in C:\Dev\VSS.TRex\src\netstandard\RaptorClassLibrary.netstandard\GridFabric\Requests\SubGridRequestsProgressive.cs:line 107
>    at VSS.TRex.Pipelines.SubGridPipelineBase`3.Initiate() in C:\Dev\VSS.TRex\src\netstandard\RaptorClassLibrary.netstandard\Pipelines\SubGridPipelineBase.cs:line 241
>    at VSS.TRex.Rendering.PlanViewTileRenderer.ExecutePipeline() in C:\Dev\VSS.TRex\src\netstandard\RaptorClassLibrary.netstandard\Rendering\PlanViewTileRenderer.cs:line 262
> ---> (Inner Exception #0) Apache.Ignite.Core.Binary.BinaryObjectException: Conflicting field IDs [type=SubGridsRequestArgument, field1=Filters, field2=Filters, fieldId=-854547461]
>    at Apache.Ignite.Core.Impl.Binary.BinaryReflectiveSerializerInternal.Register(Type type, Int32 typeId, IBinaryNameMapper converter, IBinaryIdMapper idMapper, Boolean forceTimestamp)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.GetSerializer(BinaryConfiguration cfg, BinaryTypeConfiguration typeCfg, Type type, Int32 typeId, IBinaryNameMapper nameMapper, IBinaryIdMapper idMapper, ILogger log)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.AddUserType(Type type, Int32 typeId, String typeName, Boolean registered, BinaryFullTypeDescriptor desc)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.RegisterType(Type type, BinaryFullTypeDescriptor desc)
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(Type type)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T obj)
>    at Apache.Ignite.Core.Impl.Deployment.PeerLoadingExtensions.WriteWithPeerDeployment(BinaryWriter writer, Object o)
>    at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer`1.WriteBinary[T1](T1 obj, BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T obj)
>    at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer`1.WriteBinary[T1](T1 obj, BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T obj)
>    at Apache.Ignite.Core.Impl.Binary.BinaryWriter.WriteObjectDetached[T](T o)
>    at Apache.Ignite.Core.Impl.Compute.ComputeImpl.WriteJob(IComputeJob job, BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.Compute.ComputeImpl.<>c__DisplayClass1d`3.<ExecuteClosures0>b__1a(BinaryWriter writer)
>    at Apache.Ignite.Core.Impl.PlatformTargetAdapter.WriteToStream(Action`1 action, IBinaryStream stream, Marshaller marsh)
>    at Apache.Ignite.Core.Impl.PlatformJniTarget.InStreamOutObject(Int32 type, Action`1 writeAction)
>    at Apache.Ignite.Core.Impl.Compute.ComputeImpl.ExecuteClosures0[TArg,TJobRes,TReduceRes](IComputeTask`3 task, IComputeJob job, IEnumerable`1 jobs, Int32 opId, Int32 jobsCount, Action`1 writeAction)<---
> {code}
> See user list thread for more details:
> http://apache-ignite-users.70518.x6.nabble.com/Binary-type-has-different-fields-error-td21540.html



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)