This commit extends the custom SIMD optimized SQ vector scorer to include search time scoring.
When run on JDK22+ vector scoring with be done with the custom scorer. The implementation uses the JDK 22+ on-heap ALLOW_HEAP_ACCESS Linker.Option so that the native code can access the query vector directly.
It seems that the failure (the missed index) has always existed in the test scenario and it's supposed to be handled by TransportGetTaskAction.java. We catch IndexNotFoundException here and convert it to ResourceNotFoundException. Then we catch ResourceNotFoundException here and return a snapshot of a task as a response.
In the stack trace, getFinishedTaskFromIndex was called from getRunningTaskFromNode, not from waitedForCompletion due to a race between creating a get request and unblocking request which are sent asynchronously. I've changed the waitForCompletionTestCase test method to unblock the task only after the request started waiting for the task completion by registering a removal listener. By doing so, we make sure we test the "wait for completion" branch when task is running.
The part about the missed index seems to irrelevant, since waitedForCompletion is able to suppress the error and return a snapshot of running task which is not possible if getFinishedTaskFromIndex gets called directly from getRunningTaskFromNode.
Resolves#107823
Update TransportUpdateAction to remove stale inference results from _source when a semantic_text field with multiple source fields is partially updated through the Update API.
* Refactoring http settings and adding comments
* Removing new line
* Adding stats endpoint
* Improving comment and adding tests
* Fixing typo in setting name
* Switching to TransportNodesAction
* Fixing test
* Trying to fix test
* Adding equals hashcode
* Trying to send to all nodes
* Renaming to .diagnostics
* Removing unneeded variable
---------
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
This commit introduces the documentation for remote_clusters which is used to help
express the monitor_enrich privilege needed to use the ENRICH keyword across clusters
when using the API key based CCS security model.
This commit also adds "remote_clusters" to the built in privs API to for easier consumption
in Kibana.
This command will serve as a sort of "inline" enrich. This commit itself
is mostly antlr generated code and paranoid tests that the new `LOOKUP`
keyword doesn't clash with any variables named `lookup`.
I've also marked our ANTLR generated files as `linguist-generated` which
causes them to be hidden by default in github's UI. You can still click
a button to see them if you like. See
https://docs.github.com/en/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github
This removes the shim layers for `nested` that we inherited from QL.
ESQL doesn't support nested yet and when it does support nested its not
going to use the same tricks that QL uses.
We don't expect a cluster to run with `yellow` health for an extended
period of time, but it's not clear from these docs that it's important
to bring the cluster back to `green` health ASAP. This commit clarifies
these docs.
NodeJoinTests.testConcurrentJoining use their own threads, but the thread name
parsing done for validating that wait and complete of future is on different
executors would pick up more or less random fields. Now disregard these test
threads for that assertion.
Closes#109103
This adds a SecuredFileAccessPermission that Elasticsearch and plugins can use to limit access to certain files, so that only code that also has that same permission can access the specified files
A common deadlock pattern is waiting and completing a future on the same executor.
This only works until the executor is fully depleted of threads. Now assert that
waiting for a future to be completed and the completion happens on different
executors.
Introduced UnsafePlainActionFuture, used in all offending places, allowing those
to be tackled independently.