You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by md...@apache.org on 2017/06/14 13:15:22 UTC
svn commit: r1798676 -
/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/MapRecord.java
Author: mduerig
Date: Wed Jun 14 13:15:22 2017
New Revision: 1798676
URL: http://svn.apache.org/viewvc?rev=1798676&view=rev
Log:
OAK-6339: MapRecord#getKeys should should initialize child iterables lazily
Flatten nested iterators lazily
Modified:
jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/MapRecord.java
Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/MapRecord.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/MapRecord.java?rev=1798676&r1=1798675&r2=1798676&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/MapRecord.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/MapRecord.java Wed Jun 14 13:15:22 2017
@@ -305,8 +305,14 @@ public class MapRecord extends Record {
List<MapRecord> buckets = getBucketList(segment);
List<Iterable<String>> keys =
newArrayListWithCapacity(buckets.size());
- for (MapRecord bucket : buckets) {
- keys.add(bucket.getKeys());
+ for (final MapRecord bucket : buckets) {
+ keys.add(new Iterable<String>() {
+ @Nonnull
+ @Override
+ public Iterator<String> iterator() {
+ return bucket.getKeys().iterator();
+ }
+ });
}
return concat(keys);
}