[
https://issues.apache.org/jira/browse/IGNITE-12555?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17020459#comment-17020459
]
Igor Sapego commented on IGNITE-12555:
--------------------------------------
Looks good to me.
> .NET: Thin Client: deserializing DateTime fields causes BinaryTypeGet request
> for every value
> ---------------------------------------------------------------------------------------------
>
> Key: IGNITE-12555
> URL: https://issues.apache.org/jira/browse/IGNITE-12555
> Project: Ignite
> Issue Type: Bug
> Components: platforms
> Affects Versions: 2.4, 2.5, 2.6, 2.7, 2.8, 2.7.5, 2.7.6
> Reporter: Pavel Tupitsyn
> Assignee: Pavel Tupitsyn
> Priority: Blocker
> Labels: .NET
> Fix For: 2.8
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Actual: The following code causes 10 BinaryProcessorClient.GetBinaryType
> calls (2 fields, 5 Foo instances). Every call is a server request.
> Expected: 0 calls. Binary metadata should be cached after PutAll call.
> {code}
> public class CacheDateTimeMetaTest : ClientTestBase
> {
> [Test]
> public void TestDateTimeMeta()
> {
> var data = Enumerable.Range(1, 5)
> .Select(x => new Foo
> {
> Id = x,
> StartDate = DateTime.Now.AddHours(x),
> EndDate = DateTime.Now.AddDays(x)
> });
> var cache = Client.GetOrCreateCache<int, Foo>("foo");
> cache.PutAll(data.Select(x => new KeyValuePair<int, Foo>(x.Id,
> x)));
> var res = cache.Query(new ScanQuery<int, Foo>()).GetAll();
> Assert.AreEqual(cache.GetSize(), res.Count);
> }
> public class Foo
> {
> public int Id { get; set; }
> public DateTime? StartDate { get; set; }
> public DateTime? EndDate { get; set; }
> }
> }
> {code}
> This causes huge performance issues.
> *Workaround*
> * Force Timestamp format for all DateTime values
> User list discussion:
> http://apache-ignite-users.70518.x6.nabble.com/Getting-all-data-from-cache-via-scan-query-is-taking-lot-of-time-td30949.html
--
This message was sent by Atlassian Jira
(v8.3.4#803005)