From issues-return-94310-archive-asf-public=cust-asf.ponee.io@ignite.apache.org Wed Mar 27 15:54:02 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id D52BA18075F for ; Wed, 27 Mar 2019 16:54:01 +0100 (CET) Received: (qmail 19219 invoked by uid 500); 27 Mar 2019 15:54:00 -0000 Mailing-List: contact issues-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list issues@ignite.apache.org Received: (qmail 19043 invoked by uid 99); 27 Mar 2019 15:54:00 -0000 Received: from mailrelay1-us-west.apache.org (HELO mailrelay1-us-west.apache.org) (209.188.14.139) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 27 Mar 2019 15:54:00 +0000 Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 5B245E28F2 for ; Wed, 27 Mar 2019 15:54:00 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 1C8E224422 for ; Wed, 27 Mar 2019 15:54:00 +0000 (UTC) Date: Wed, 27 Mar 2019 15:54:00 +0000 (UTC) From: "Alexandr Shapkin (JIRA)" To: issues@ignite.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Assigned] (IGNITE-8588) .NET: Serialization issue when derived type hides base type member MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/IGNITE-8588?page=3Dcom.atlassi= an.jira.plugin.system.issuetabpanels:all-tabpanel ] Alexandr Shapkin reassigned IGNITE-8588: ---------------------------------------- Assignee: Alexandr Shapkin (was: Pavel Tupitsyn) > .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 > > The following class structure causes an exception that is hard to underst= and (when putting instance of B into Ignite cache): > {code} > public class A > { > public int bob; > }=20 > public class B : A > { > public int bob; > } > {code} > Exception: > {code} > Apache.Ignite.Core.Binary.BinaryObjectException: Conflicting field IDs [= type=3DSubGridsRequestArgument, field1=3DFilters, field2=3DFilters, fieldId= =3D-854547461] > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryReflectiveSerializer= Internal.Register(Type type, Int32 typeId, IBinaryNameMapper converter, IBi= naryIdMapper idMapper, Boolean forceTimestamp) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.GetSerializer(B= inaryConfiguration cfg, BinaryTypeConfiguration typeCfg, Type type, Int32 t= ypeId, IBinaryNameMapper nameMapper, IBinaryIdMapper idMapper, ILogger log) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.AddUserType(Typ= e type, Int32 typeId, String typeName, Boolean registered, BinaryFullTypeDe= scriptor desc) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.RegisterType(Ty= pe type, BinaryFullTypeDescriptor desc) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(T= ype type) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T ob= j) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Deployment.PeerLoadingExtensions.= WriteWithPeerDeployment(BinaryWriter writer, Object o) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer= `1.WriteBinary[T1](T1 obj, BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T ob= j) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer= `1.WriteBinary[T1](T1 obj, BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T ob= j) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.WriteObjectDe= tached[T](T o) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Compute.ComputeImpl.WriteJob(ICom= puteJob job, BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Compute.ComputeImpl.<>c__DisplayC= lass1d`3.b__1a(BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.PlatformTargetAdapter.WriteToStre= am(Action`1 action, IBinaryStream stream, Marshaller marsh) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.PlatformJniTarget.InStreamOutObje= ct(Int32 type, Action`1 writeAction) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Compute.ComputeImpl.ExecuteClosur= es0[TArg,TJobRes,TReduceRes](IComputeTask`3 task, IComputeJob job, IEnumera= ble`1 jobs, Int32 opId, Int32 jobsCount, Action`1 writeAction) > =C2=A0=C2=A0 --- End of inner exception stack trace --- > =C2=A0=C2=A0 at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean in= cludeTaskCanceledExceptions) > =C2=A0=C2=A0 at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeou= t, CancellationToken cancellationToken) > =C2=A0=C2=A0 at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeou= t) > =C2=A0=C2=A0 at VSS.TRex.GridFabric.Requests.SubGridRequestsProgressive`2= .Execute() in C:\Dev\VSS.TRex\src\netstandard\RaptorClassLibrary.netstandar= d\GridFabric\Requests\SubGridRequestsProgressive.cs:line 107 > =C2=A0=C2=A0 at VSS.TRex.Pipelines.SubGridPipelineBase`3.Initiate() in C:= \Dev\VSS.TRex\src\netstandard\RaptorClassLibrary.netstandard\Pipelines\SubG= ridPipelineBase.cs:line 241 > =C2=A0=C2=A0 at VSS.TRex.Rendering.PlanViewTileRenderer.ExecutePipeline()= in C:\Dev\VSS.TRex\src\netstandard\RaptorClassLibrary.netstandard\Renderin= g\PlanViewTileRenderer.cs:line 262 > ---> (Inner Exception #0) Apache.Ignite.Core.Binary.BinaryObjectException= : Conflicting field IDs [type=3DSubGridsRequestArgument, field1=3DFilters, = field2=3DFilters, fieldId=3D-854547461] > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryReflectiveSerializer= Internal.Register(Type type, Int32 typeId, IBinaryNameMapper converter, IBi= naryIdMapper idMapper, Boolean forceTimestamp) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.GetSerializer(B= inaryConfiguration cfg, BinaryTypeConfiguration typeCfg, Type type, Int32 t= ypeId, IBinaryNameMapper nameMapper, IBinaryIdMapper idMapper, ILogger log) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.AddUserType(Typ= e type, Int32 typeId, String typeName, Boolean registered, BinaryFullTypeDe= scriptor desc) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.RegisterType(Ty= pe type, BinaryFullTypeDescriptor desc) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.Marshaller.GetDescriptor(T= ype type) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T ob= j) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Deployment.PeerLoadingExtensions.= WriteWithPeerDeployment(BinaryWriter writer, Object o) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer= `1.WriteBinary[T1](T1 obj, BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T ob= j) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinarySystemTypeSerializer= `1.WriteBinary[T1](T1 obj, BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.Write[T](T ob= j) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Binary.BinaryWriter.WriteObjectDe= tached[T](T o) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Compute.ComputeImpl.WriteJob(ICom= puteJob job, BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Compute.ComputeImpl.<>c__DisplayC= lass1d`3.b__1a(BinaryWriter writer) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.PlatformTargetAdapter.WriteToStre= am(Action`1 action, IBinaryStream stream, Marshaller marsh) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.PlatformJniTarget.InStreamOutObje= ct(Int32 type, Action`1 writeAction) > =C2=A0=C2=A0 at Apache.Ignite.Core.Impl.Compute.ComputeImpl.ExecuteClosur= es0[TArg,TJobRes,TReduceRes](IComputeTask`3 task, IComputeJob job, IEnumera= ble`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)