You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Luchnikov Alexander (Jira)" <ji...@apache.org> on 2022/05/13 10:22:00 UTC

[jira] [Updated] (IGNITE-16649) .NET: Missing binary schema when field is removed

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

Luchnikov Alexander updated IGNITE-16649:
-----------------------------------------
    Labels: .NET ise.lts  (was: .NET)

> .NET: Missing binary schema when field is removed
> -------------------------------------------------
>
>                 Key: IGNITE-16649
>                 URL: https://issues.apache.org/jira/browse/IGNITE-16649
>             Project: Ignite
>          Issue Type: Bug
>          Components: platforms
>            Reporter: Ivan Daschinsky
>            Assignee: Pavel Tupitsyn
>            Priority: Major
>              Labels: .NET, ise.lts
>             Fix For: 2.13
>
>         Attachments: BinaryChangeSchemaTest.cs
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> When putting IBinarilizable instance with different field set, schema is not sent to cluster, leading to failure if another node tries to get value from cache.
> {code}
> Apache.Ignite.Core.Binary.BinaryObjectException : Cannot find schema for object with compact footer [typeId=-1422440667, schemaId=-935090685]
>    at Apache.Ignite.Core.Impl.Binary.BinaryObjectSchemaSerializer.GetFieldIds(BinaryObjectHeader hdr, IIgniteInternal ignite) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryObjectSchemaSerializer.cs:line 307
>    at Apache.Ignite.Core.Impl.Binary.BinaryObjectSchemaSerializer.GetFieldIds(BinaryObjectHeader hdr, IIgniteInternal ignite, IBinaryStream stream, Int32 objectPos) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryObjectSchemaSerializer.cs:line 262
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.SetCurSchema(IBinaryTypeDescriptor desc) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 803
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadFullObject[T](Int32 pos, Type typeOverride) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 751
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 577
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 536
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.ReadBinaryObject[T](Boolean doDetach) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 635
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.TryDeserialize[T](T& res, Type typeOverride) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 582
>    at Apache.Ignite.Core.Impl.Binary.BinaryReader.Deserialize[T](Type typeOverride) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/BinaryReader.cs:line 536
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.Unmarshal[T](IBinaryStream stream, BinaryMode mode, BinaryObjectBuilder builder) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/Marshaller.cs:line 295
>    at Apache.Ignite.Core.Impl.Binary.Marshaller.Unmarshal[T](IBinaryStream stream, Boolean keepBinary) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Binary/Marshaller.cs:line 268
>    at Apache.Ignite.Core.Impl.Cache.CacheImpl`2.Unmarshal[T](IBinaryStream stream) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs:line 1750
>    at Apache.Ignite.Core.Impl.Cache.CacheImpl`2.<>c__DisplayClass146_0.<DoOutInOpNullable>b__1(IBinaryStream stream, Int64 res) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs:line 1907
>    at Apache.Ignite.Core.Impl.PlatformJniTarget.InStreamOutLong[TR](Int32 type, Func`2 outAction, Func`3 inAction, Func`2 readErrorAction) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformJniTarget.cs:line 214
>    at Apache.Ignite.Core.Impl.PlatformTargetAdapter.DoOutInOpX[TR](Int32 type, Action`1 outAction, Func`3 inAction, Func`2 inErrorAction) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/PlatformTargetAdapter.cs:line 236
>    at Apache.Ignite.Core.Impl.Cache.CacheImpl`2.DoOutInOpNullable(CacheOp cacheOp, TK x) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs:line 1905
>    at Apache.Ignite.Core.Impl.Cache.CacheImpl`2.TryGet(TK key, TV& value) in /home/ivandasch/Job/ignite-pmdk/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheImpl.cs:line 592
> {code}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)