Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] CircuitBreakingException in PagedBytesStringFieldDataTests.testDeletedDocs #32047

Closed
cbuescher opened this issue Jul 13, 2018 · 3 comments
Closed
Labels
:Core/Infra/Circuit Breakers Track estimates of memory consumption to prevent overload :Search Foundations/Mapping Index mappings, including merging and defining field types Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch >test-failure Triaged test failures from CI

Comments

@cbuescher
Copy link
Member

Failure: https://elasticsearch-ci.elastic.co/job/elastic+elasticsearch+master+matrix-java-periodic/ES_BUILD_JAVA=java11,ES_RUNTIME_JAVA=java11,nodes=virtual&&linux/174/consoleFull

I wasn't able to reproduce this on master, even with running several hundred iterations. I also used Java 11, still no game. Here's the incantation anyway:

REPRODUCE WITH
./gradlew :server:test \
  -Dtests.seed=83098F6182FD3A5A \
  -Dtests.class=org.elasticsearch.index.fielddata.PagedBytesStringFieldDataTests \
  -Dtests.method="testDeletedDocs" \
  -Dtests.security.manager=true \
  -Dtests.locale=et-EE \
  -Dtests.timezone=America/Costa_Rica

(and currently needs to add the -x :server:testScriptDocValuesMissingV6Behaviour, see #31964)

16:04:28 ERROR   0.15s J3 | PagedBytesStringFieldDataTests.testDeletedDocs <<< FAILURES!
16:04:28    > Throwable #1: ElasticsearchException[java.util.concurrent.ExecutionException: CircuitBreakingException[[parent] Data too large, data for [value] would be [518120594/494.1mb], which is larger than the limit of [510027366/486.3mb]]]; nested: ExecutionException[CircuitBreakingException[[parent] Data too large, data for [value] would be [518120594/494.1mb], which is larger than the limit of [510027366/486.3mb]]]; nested: CircuitBreakingException[[parent] Data too large, data for [value] would be [518120594/494.1mb], which is larger than the limit of [510027366/486.3mb]];
16:04:28    > 	at __randomizedtesting.SeedInfo.seed([83098F6182FD3A5A:3982E8FFD520658D]:0)
16:04:28    > 	at org.elasticsearch.index.fielddata.plain.AbstractIndexFieldData.load(AbstractIndexFieldData.java:74)
16:04:28    > 	at org.elasticsearch.index.fielddata.AbstractFieldDataImplTestCase.testDeletedDocs(AbstractFieldDataImplTestCase.java:79)
16:04:28    > 	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:04:28    > 	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
16:04:28    > 	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:04:28    > 	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
16:04:28    > 	at java.base/java.lang.Thread.run(Thread.java:834)
16:04:28    > Caused by: java.util.concurrent.ExecutionException: CircuitBreakingException[[parent] Data too large, data for [value] would be [518120594/494.1mb], which is larger than the limit of [510027366/486.3mb]]
16:04:28   2> NOTE: leaving temporary files on disk at: /var/lib/jenkins/workspace/elastic+elasticsearch+master+matrix-java-periodic/ES_BUILD_JAVA/java11/ES_RUNTIME_JAVA/java11/nodes/virtual&&linux/server/build/testrun/test/J3/temp/org.elasticsearch.index.fielddata.PagedBytesStringFieldDataTests_83098F6182FD3A5A-001
16:04:28   2> NOTE: test params are: codec=Asserting(Lucene70): {field=PostingsFormat(name=Asserting), _id=PostingsFormat(name=Asserting), text=PostingsFormat(name=Asserting), type=PostingsFormat(name=Asserting), value=PostingsFormat(name=Asserting)}, docValues:{_id=DocValuesFormat(name=Lucene70), text=DocValuesFormat(name=Asserting), type=DocValuesFormat(name=Lucene70), value=DocValuesFormat(name=Lucene70)}, maxPointsInLeafNode=1325, maxMBSortInHeap=7.490371495226552, sim=RandomSimilarity(queryNorm=true): {}, locale=et-EE, timezone=America/Costa_Rica
16:04:28    > 	at org.elasticsearch.common.cache.Cache.computeIfAbsent(Cache.java:436)
16:04:28   2> NOTE: Linux 4.4.104-39-default amd64/Oracle Corporation 11-ea (64-bit)/cpus=16,threads=1,free=390612560,total=536870912
16:04:28   2> NOTE: All tests run in this JVM: [TDigestPercentileRanksAggregatorTests, ClusterStateHealthTests, InternalDerivativeTests, RefreshListenersTests, UpdateThreadPoolSettingsTests, DocumentFieldMapperTests, RestClearScrollActionTests, MultiPointBuilderTests, KeyStoreWrapperTests, FieldCapabilitiesTests, ClusterStatsNodesTests, IndexServiceTests, StreamTests, TransportBulkActionTests, PendingClusterStatesQueueTests, StreamsTests, QueueResizingEsThreadPoolExecutorTests, ClusterUpdateSettingsRequestTests, PluginsTests, ResourceWatcherServiceTests, JsonXContentTests, SearchModuleTests, GeoCentroidTests, ShardVersioningTests, ScriptServiceTests, PagedBytesStringFieldDataTests]
16:04:28    > 	at org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.load(IndicesFieldDataCache.java:136)
16:04:28    > 	at org.elasticsearch.index.fielddata.plain.AbstractIndexFieldData.load(AbstractIndexFieldData.java:68)
16:04:28    > 	... 37 more
16:04:28    > Caused by: CircuitBreakingException[[parent] Data too large, data for [value] would be [518120594/494.1mb], which is larger than the limit of [510027366/486.3mb]]
16:04:28    > 	at org.elasticsearch.indices.breaker.HierarchyCircuitBreakerService.checkParentLimit(HierarchyCircuitBreakerService.java:257)
16:04:28    > 	at org.elasticsearch.common.breaker.ChildMemoryCircuitBreaker.addEstimateBytesAndMaybeBreak(ChildMemoryCircuitBreaker.java:128)
16:04:28    > 	at org.elasticsearch.index.fielddata.RamAccountingTermsEnum.flush(RamAccountingTermsEnum.java:71)
16:04:28    > 	at org.elasticsearch.index.fielddata.RamAccountingTermsEnum.next(RamAccountingTermsEnum.java:85)
16:04:28    > 	at org.elasticsearch.index.fielddata.plain.PagedBytesIndexFieldData.loadDirect(PagedBytesIndexFieldData.java:113)
16:04:28    > 	at org.elasticsearch.index.fielddata.plain.PagedBytesIndexFieldData.loadDirect(PagedBytesIndexFieldData.java:52)
16:04:28    > 	at org.elasticsearch.indices.fielddata.cache.IndicesFieldDataCache$IndexFieldCache.lambda$load$0(IndicesFieldDataCache.java:139)
16:04:28    > 	at org.elasticsearch.common.cache.Cache.computeIfAbsent(Cache.java:433)
16:04:28    > 	... 39 more
@cbuescher cbuescher added :Search Foundations/Mapping Index mappings, including merging and defining field types >test-failure Triaged test failures from CI :Core/Infra/Circuit Breakers Track estimates of memory consumption to prevent overload labels Jul 13, 2018
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-search-aggs

@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-infra

@dakrone
Copy link
Member

dakrone commented Jul 13, 2018

I opened #32056 which might also help with the error message on this

danielmitterdorfer added a commit to danielmitterdorfer/elasticsearch that referenced this issue Jul 16, 2018
With this commit we disable the real-memory circuit breaker in tests
that inherit from `ESSingleNodeTestCase`. As this breaker is based on
real memory usage over which we have no (full) control in tests and
their purpose is also not to test the circuit breaker, we use the
deterministic circuit breaker implementation that only accounts for
explicitly reserved memory.

Closes elastic#32047
danielmitterdorfer added a commit that referenced this issue Jul 16, 2018
With this commit we disable the real-memory circuit breaker in tests
that inherit from `ESSingleNodeTestCase`. As this breaker is based on
real memory usage over which we have no (full) control in tests and
their purpose is also not to test the circuit breaker, we use the
deterministic circuit breaker implementation that only accounts for
explicitly reserved memory.

Closes #32047
Relates #32071
@javanna javanna added the Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch label Jul 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Core/Infra/Circuit Breakers Track estimates of memory consumption to prevent overload :Search Foundations/Mapping Index mappings, including merging and defining field types Team:Search Foundations Meta label for the Search Foundations team in Elasticsearch >test-failure Triaged test failures from CI
Projects
None yet
Development

No branches or pull requests

4 participants