Skip to content

Commit 8417580

Browse files
committed
Parent Child: complex parent child mapping (>2 hierarchy) might fail, closes elastic#1039.
1 parent 9f3594a commit 8417580

File tree

1 file changed

+3
-3
lines changed
  • modules/elasticsearch/src/main/java/org/elasticsearch/index/cache/id/simple

1 file changed

+3
-3
lines changed

modules/elasticsearch/src/main/java/org/elasticsearch/index/cache/id/simple/SimpleIdCache.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,6 @@ public class SimpleIdCache extends AbstractIndexComponent implements IdCache, In
149149

150150
Map<String, TypeBuilder> readerBuilder = builders.get(reader.getCoreCacheKey());
151151

152-
int t = 1; // current term number (0 indicated null value)
153152
String field = StringHelper.intern(ParentFieldMapper.NAME);
154153
TermDocs termDocs = reader.termDocs();
155154
TermEnum termEnum = reader.terms(new Term(field));
@@ -178,11 +177,11 @@ public class SimpleIdCache extends AbstractIndexComponent implements IdCache, In
178177
typeBuilder.parentIdsValues.add(idAsBytes);
179178
added = true;
180179
}
181-
typeBuilder.parentIdsOrdinals[termDocs.doc()] = t;
180+
typeBuilder.parentIdsOrdinals[termDocs.doc()] = typeBuilder.t;
182181
}
183182
}
184183
if (added) {
185-
t++;
184+
typeBuilder.t++;
186185
}
187186
} while (termEnum.next());
188187
} finally {
@@ -241,6 +240,7 @@ static class TypeBuilder {
241240
final ExtTObjectIntHasMap<BytesWrap> idToDoc = new ExtTObjectIntHasMap<BytesWrap>(Constants.DEFAULT_CAPACITY, Constants.DEFAULT_LOAD_FACTOR, -1);
242241
final ArrayList<BytesWrap> parentIdsValues = new ArrayList<BytesWrap>();
243242
final int[] parentIdsOrdinals;
243+
int t = 1; // current term number (0 indicated null value)
244244

245245
TypeBuilder(IndexReader reader) {
246246
parentIdsOrdinals = new int[reader.maxDoc()];

0 commit comments

Comments
 (0)