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-4045) .NET: Support DML API
Date Tue, 27 Dec 2016 16:23:58 GMT

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

Pavel Tupitsyn edited comment on IGNITE-4045 at 12/27/16 4:23 PM:
------------------------------------------------------------------

1) BinaryObject.Equals fixed.
2) We don't need this. Identity resolver in .NET is needed only to write correct hash code
to a stream. Enums are written as [typeId, value]. There is no hash code. In Java there is
special handing for BinaryEnum, but I suspect that this code is never called. Let's see what
should be done in a separate task: IGNITE-4500
3) There is already a ticket: IGNITE-4397. In current ticket FieldComparer is hidden from
public API, please ignore it.
4) I agree. This is done intentionally because we are on a very hot path here and want to
avoid any allocations or overhead associated with {{ReadByte}} and {{ReadByteArray}}. I've
refactored this to a generic {{IBinaryStream.Apply}} method which allows operating on byte
pointer directly without allocations.
5) IGNITE-4495

* Implemented public methods of {{IEqualityComparer}}
* Fixed hash code handling for wrappers ({{DateTimeHolder}}, {{SerializableObjectHolder}})
* Fixed array handling in BinaryObject.Equals
* Added a lot more tests


was (Author: ptupitsyn):
1) BinaryObject.Equals fixed.
2) We don't need this. Identity resolver in .NET is needed only to write correct hash code
to a stream. Enums are written as [typeId, value]. There is no hash code. In Java there is
special handing for BinaryEnum, but I suspect that this code is never called. Let's see what
should be done in a separate task: IGNITE-4500
3) There is already a ticket: IGNITE-4397. In current ticket FieldComparer is hidden from
public API, please ignore it.
4) I agree. This is done intentionally because we are on a very hot path here and want to
avoid any allocations or overhead associated with {{ReadByte}} and {{ReadByteArray}}. I've
refactored this to a generic {{IBinaryStream.Apply}} method which allows operating on byte
pointer directly without allocations.
5) IGNITE-4495

Implemented public methods of {{IEqualityComparer}}, fixed hash code handling for wrappers
({{DateTimeHolder}}, {{SerializableObjectHolder}}), added a lot more tests.

> .NET: Support DML API
> ---------------------
>
>                 Key: IGNITE-4045
>                 URL: https://issues.apache.org/jira/browse/IGNITE-4045
>             Project: Ignite
>          Issue Type: New Feature
>          Components: platforms
>            Reporter: Denis Magda
>            Assignee: Pavel Tupitsyn
>              Labels: roadmap
>             Fix For: 2.0
>
>
> Ignite's Java component will provide support for DML soon (IGNITE-2294). At she same
time DML will be supported at the level of ODBC and JDBC drivers.
> As the next step we should include the similar functionality into Ignite.NET by doing
the following:
> - Implement DML API;
> - Enhance {{QueryExample.cs}} by doing INSERTs instead of cache.puts and adding UPDATE
and DELETE operation examples.
> - Add documentation to Ignite.NET readme.io covering the feature. Most like most of the
content can be take from the general documentation when this ticket IGNITE-4018 is ready (https://apacheignite.readme.io/docs/distributed-dml).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message