You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Denis Chudov (Jira)" <ji...@apache.org> on 2022/02/24 11:43:00 UTC
[jira] [Created] (IGNITE-16625) Reduce the costs of updating hash maps contained in VersionedValues
Denis Chudov created IGNITE-16625:
-------------------------------------
Summary: Reduce the costs of updating hash maps contained in VersionedValues
Key: IGNITE-16625
URL: https://issues.apache.org/jira/browse/IGNITE-16625
Project: Ignite
Issue Type: Improvement
Reporter: Denis Chudov
The history of VersionedValue may contain different objects for each token. In the case of maps, which appeared to be common for TableManager and SqlQueryProcessor, we need to recreate the map on every update, adding all entries from the previous version and making some changes after it. This can slower updates and can cause excessive GC pressure.
We can reduce these costs by storing optimized data sctructure in VersionedValues instead of simple HashMaps. There could be an object, referring to original map and containing a patch for it, that represents an update that was done for VersionedValue within current causality token in comparing with the previous one.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)