ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Tupitsyn (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-6896) .NET: support Multidimensional Arrays in binary serializer
Date Tue, 14 Nov 2017 09:46:00 GMT

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

Pavel Tupitsyn edited comment on IGNITE-6896 at 11/14/17 9:45 AM:
------------------------------------------------------------------

I see two approaches for a fix:
- Write multidimensional as jagged, convert on use (same as int as uint situation)
- Wrap multidimensional in a wrapper (see {{PeerLoadingObjectHolderSerializer}} for an example)

First one breaks idenstity (returned object cannot be cast to initial type), so we should
go with the second one I think.


was (Author: ptupitsyn):
I see two approaches for a fix:
- Write multidimensional as jagged, convert on use (same as int as uint situation)
- Wrap multidimensional in a wrapper (see {{PeerLoadingObjectHolderSerializer}} for an example)

> .NET: support Multidimensional Arrays in binary serializer
> ----------------------------------------------------------
>
>                 Key: IGNITE-6896
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6896
>             Project: Ignite
>          Issue Type: Bug
>      Security Level: Public(Viewable by anyone) 
>          Components: platforms
>    Affects Versions: 2.3
>            Reporter: Alexey Popov
>            Assignee: Pavel Tupitsyn
>              Labels: .NET
>
> It is found that legacy 2D, 3D, etc. are not working in BinarySerializer.
> Sample reproducer:
> {code:java}
>         [Test]
>         public void TestXX()
>         {
>             var array2D = new float[32, 32];
>             var res = TestUtils.SerializeDeserialize(array2D);
>             Assert.AreEqual(array2D, res);
>         }
> {code}
> BTW, please note that 2D array in Java (a[2][2]) is just a jugged array:
> {noformat}
> obj = {byte[2][]@1928}
>  0 = {byte[2]@1974}
>  1 = {byte[2]@1975}
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message