You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by "atoildw (Jira)" <ji...@apache.org> on 2020/01/21 13:43:00 UTC

[jira] [Created] (IOTDB-433) Add iterators to TVList to prevent data copy

atoildw created IOTDB-433:
-----------------------------

             Summary: Add iterators to TVList to prevent data copy
                 Key: IOTDB-433
                 URL: https://issues.apache.org/jira/browse/IOTDB-433
             Project: Apache IoTDB
          Issue Type: Improvement
            Reporter: atoildw
            Assignee: atoildw
             Fix For: 0.10.0-SNAPSHOT


In the previous design, when you used in-memory data:
 # the {{TVList}} structure was {{clone}} into an {{IWritableMemChunk}} named {{chunkCopy}}

 # And then copied again into a {{List<TimeValuePair>}} structure

 # If multiple data happens to exist in {{flushingMemTable}}, {{MemSeriesLazyMerger}} will use {{addAll(List<TimeValuePair>)}} to copy again

so, I think we should directly use {{TVList}} to implement {{IPointReader}} interface and use it externally

Add the {{Iterator}} class and {{getIterator}} method for {{TVlist}}

and then ,data was copied only when it is used



--
This message was sent by Atlassian Jira
(v8.3.4#803005)