Vladimir Ozerov created IGNITE-1422:
---------------------------------------
Summary: .Net: Marshalling can be optimized for fixed-length objects.
Key: IGNITE-1422
URL:
https://issues.apache.org/jira/browse/IGNITE-1422 Project: Ignite
Issue Type: Task
Components: interop
Affects Versions: 1.1.4
Reporter: Vladimir Ozerov
Fix For: ignite-1.5
Sometimes we can guess user object length in advance:
1) Strict rule: it is "reflective" and contains only fixed-length fields.
2) Speculative rule: It is "marshal aware", contains only fixed-length fields and there is only one metadata "path".
In these cases we can do the following:
1) No tracking of length and raw offset.
2) Header can be written as one memcpy() rather than as multiple int/byte/bool writes.
We need to have a fallback strategy for a cases when new metadata path appears or user write raw data. It is very easy: if expected and actual lengths differ at the end, set proper values.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)