Skip to content

special case sparse/dense vector yaml tests failing #39218

@talevy

Description

@talevy

reproduces all the time with this test seed: 756AA81A7A89C347.
seems to pass most of the other times

REPRODUCE WITH: ./gradlew :modules:mapper-extras:integTestRunner \
  -Dtests.seed=756AA81A7A89C347 \
  -Dtests.class=org.elasticsearch.index.mapper.MapperExtrasClientYamlTestSuiteIT \
  -Dtests.method="test {yaml=dense-vector/20_special_cases/Dense vectors should error with sparse vector functions}" \
  -Dtests.security.manager=true \
  -Dtests.locale=fi \
  -Dtests.timezone=SystemV/PST8PDT \
  -Dcompiler.java=11 \
  -Druntime.java=8

REPRODUCE WITH: ./gradlew :modules:mapper-extras:integTestRunner \
  -Dtests.seed=756AA81A7A89C347 \
  -Dtests.class=org.elasticsearch.index.mapper.MapperExtrasClientYamlTestSuiteIT \
  -Dtests.method="test {yaml=sparse-vector/20_special_cases/Sparse vectors should error with dense vector functions}" \
  -Dtests.security.manager=true \
  -Dtests.locale=fi \
  -Dtests.timezone=SystemV/PST8PDT \
  -Dcompiler.java=11 \
  -Druntime.java=8

CI link: https://elasticsearch-ci.elastic.co/job/elastic+elasticsearch+master+multijob-unix-compatibility/os=ubuntu-18.04&&immutable/256/console

relevant stacktrace for dense failure:

java.lang.AssertionError: Failure at [dense-vector/20_special_cases:137]: expected [400] status code but api [search] returned [200 OK] [{"took":10,"timed_out":false,"_shards":{"total":2,"successful":1,"skipped":0,"failed":1,"failures":[{"shard":0,"index":"test-index","node":"Y3rRp_nVRU6tTgjctAh9dA","reason":{"type":"script_exception","reason":"runtime error","script_stack":["dotProductSparse(params.query_vector, doc['my_dense_vector'])","                                         ^---- HERE"],"script":"dotProductSparse(params.query_vector, doc['my_dense_vector'])","lang":"painless","caused_by":{"type":"class_cast_exception","reason":"class org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues cannot be cast to class org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues (org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues and org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues are in unnamed module of loader java.net.FactoryURLClassLoader @73d69c0f)"}}}]},"hits":{"total":{"value":0,"relation":"eq"},"max_score":null,"hits":[]}}]
	at __randomizedtesting.SeedInfo.seed([756AA81A7A89C347:FD3E97C0D475AEBF]:0)
	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:387)
	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.test(ESClientYamlSuiteTestCase.java:364)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1750)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:938)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:974)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:988)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:49)
	at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
	at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
	at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
	at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:817)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:468)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:947)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:832)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:883)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:894)
	at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:41)
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)
	at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
	at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
	at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:54)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.AssertionError: expected [400] status code but api [search] returned [200 OK] [{"took":10,"timed_out":false,"_shards":{"total":2,"successful":1,"skipped":0,"failed":1,"failures":[{"shard":0,"index":"test-index","node":"Y3rRp_nVRU6tTgjctAh9dA","reason":{"type":"script_exception","reason":"runtime error","script_stack":["dotProductSparse(params.query_vector, doc['my_dense_vector'])","                                         ^---- HERE"],"script":"dotProductSparse(params.query_vector, doc['my_dense_vector'])","lang":"painless","caused_by":{"type":"class_cast_exception","reason":"class org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues cannot be cast to class org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues (org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues and org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues are in unnamed module of loader java.net.FactoryURLClassLoader @73d69c0f)"}}}]},"hits":{"total":{"value":0,"relation":"eq"},"max_score":null,"hits":[]}}]
	at org.junit.Assert.fail(Assert.java:88)
	at org.elasticsearch.test.rest.yaml.section.DoSection.execute(DoSection.java:255)
	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:380)
	... 38 more

stacktrace for sparse failure:

java.lang.AssertionError: Failure at [sparse-vector/20_special_cases:188]: expected [400] status code but api [search] returned [200 OK] [{"took":7,"timed_out":false,"_shards":{"total":2,"successful":1,"skipped":0,"failed":1,"failures":[{"shard":0,"index":"test-index","node":"Y3rRp_nVRU6tTgjctAh9dA","reason":{"type":"script_exception","reason":"runtime error","script_stack":["dotProduct(params.query_vector, doc['my_sparse_vector'])","                                   ^---- HERE"],"script":"dotProduct(params.query_vector, doc['my_sparse_vector'])","lang":"painless","caused_by":{"type":"class_cast_exception","reason":"class org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues cannot be cast to class org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues (org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues and org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues are in unnamed module of loader java.net.FactoryURLClassLoader @73d69c0f)"}}}]},"hits":{"total":{"value":0,"relation":"eq"},"max_score":null,"hits":[]}}]
	at __randomizedtesting.SeedInfo.seed([756AA81A7A89C347:FD3E97C0D475AEBF]:0)
	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:387)
	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.test(ESClientYamlSuiteTestCase.java:364)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1750)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:938)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:974)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:988)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:49)
	at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
	at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
	at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
	at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:817)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:468)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:947)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:832)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:883)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:894)
	at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:41)
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)
	at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
	at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
	at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:54)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.AssertionError: expected [400] status code but api [search] returned [200 OK] [{"took":7,"timed_out":false,"_shards":{"total":2,"successful":1,"skipped":0,"failed":1,"failures":[{"shard":0,"index":"test-index","node":"Y3rRp_nVRU6tTgjctAh9dA","reason":{"type":"script_exception","reason":"runtime error","script_stack":["dotProduct(params.query_vector, doc['my_sparse_vector'])","                                   ^---- HERE"],"script":"dotProduct(params.query_vector, doc['my_sparse_vector'])","lang":"painless","caused_by":{"type":"class_cast_exception","reason":"class org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues cannot be cast to class org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues (org.elasticsearch.index.query.VectorScriptDocValues$SparseVectorScriptDocValues and org.elasticsearch.index.query.VectorScriptDocValues$DenseVectorScriptDocValues are in unnamed module of loader java.net.FactoryURLClassLoader @73d69c0f)"}}}]},"hits":{"total":{"value":0,"relation":"eq"},"max_score":null,"hits":[]}}]
	at org.junit.Assert.fail(Assert.java:88)
	at org.elasticsearch.test.rest.yaml.section.DoSection.execute(DoSection.java:255)
	at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:380)
	... 38 more

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions