When the bulk request executed by the LocalExporter has at least 1 failure, an exception is thrown and the BulkRequestBuilder is not reset. Then the next time Marvel collects data it will contain all the previous requests plus the new ones... leading to an OOM. IThis behavior was reproduced with a closed marvel index but it also happen in case of unassigned shards.
Original commit: elastic/x-pack-elasticsearch@9c3caa08eb
When Shield and Marvel are installed together and no indices exist in the cluster yet, Shield returns an IndexNotFoundException. This commit ignores and logs at DEBUG level any IndexNotFoundException iff a) Shield is enabled and 2) marvel.agent.indices setting is empty.
Closeselastic/elasticsearch#887
Original commit: elastic/x-pack-elasticsearch@5d227d775d
This change disables document and field level security by default so that we are able to maintain
bulk update functionality. Users that enable DLS/FLS will not have this functionality. Additionally,
if a user tries to configure DLS/FLS in a role without enabling it, the role will be skipped during
parsing and a log message will be logged at the error level.
See elastic/elasticsearch#938
Original commit: elastic/x-pack-elasticsearch@60c7519092
This commit reverts a previous change where searcher were not wrapped when the RequestContext
could not be found. If DLS/FLS is enabled, which is the default, any bulk request that contains an
update request will not be permitted. This change also exposes the ability to completely disable DLS
and FLS so that users who are not using these features can still use bulk updates.
See elastic/elasticsearch#938
Original commit: elastic/x-pack-elasticsearch@513782db1c
Gradle marks dependencies with a version containing "SNAPSHOT" as
"changing", and caches them for 24 hours by default. This updates the
configuration to not cache them at all.
Original commit: elastic/x-pack-elasticsearch@ac95e30a96
The BytesStreamOutput buffer is not reset when exporting multiple documents. It causes the same marvel doc to be indexed many times and it creates very large bulk requests. Bug introduced in elastic/x-pack@8575fd91c4
Original commit: elastic/x-pack-elasticsearch@adac96677d
Previously, when the RequestContext could not be located a FieldSubsetReader was returned that only
allowed meta fields to be read. This was done for safety in case there was an API missed so we did not
leak data. However, this causes issues because some requests in elasticsearch execute on a different
thread than the one with the RequestContext so we effectively lose this context and prevent access to
the fields in the document. This is especially problematic with update requests, because that means that
fields that aren't included in the updated document will be lost.
This commit removes the wrapping of the readers in this case and adds tests for bulk updates.
Closeselastic/elasticsearch#938
Original commit: elastic/x-pack-elasticsearch@74c8059da0
In elastic/elasticsearchelastic/elasticsearch#14668, transitive dependencies were removed
from elasticsearch, and plugins now no longer get transitive deps
either. This commit fixes xplugins to remove transitive deps.
Original commit: elastic/x-pack-elasticsearch@5c41657b6e
With elastic/elasticsearchelastic/elasticsearch#14645, repositories, including the lucene
snapshot repo, are now handled by the build plugin itself. This change
removes this from xplugins.
Original commit: elastic/x-pack-elasticsearch@8e0c7ef894
In certain cases this could cause Watcher to prevent from being started (either automatically or manually):
* The watch of the triggered watch doesn't exist
* The execution service rejected the execution the watch. (due to not enough threads in the thread pool)
If a watch record gets overwritten this means it has been executed before when watcher was running, but we were unable to delete the triggered watch. So we executed the a watch twice with the same trigger event. This can happen if watcher was stopped before because of the node running Watcher unexpectedly stopped (master left, power loss etc.)
In stead of failing to write the watch record, we overwrite it set the state 'executed_multiple_times'.
Closeselastic/elasticsearch#695
Original commit: elastic/x-pack-elasticsearch@20f805cb99
Currently, running any task while attached to elasticsearch will also
try to run that task in all elasticsearch projects. This change causes
x-plugins to be moved into a subproject when attached. It does this by
dynamically creating a fake root project, and making this root project
think it is attached to the existing attachments, along with x-plugins
itself.
This also fixes buildSrc so attachment to elasticsearch's buildSrc
actually works.
Original commit: elastic/x-pack-elasticsearch@da0adf1da5
This fixes a nasty bug, when trying to extract arrays, that contain objects
from a searchinput. Reason for this is, that we reset the state to early, while
still being in an array and not having read all of the embedded objects.
With Jackson 2.6 we should reuse jacksons capabilities to not only filter for
xcontent builders, but also for parsers. Not the nicest code ever.
Closeselastic/elasticsearch#852
Original commit: elastic/x-pack-elasticsearch@2682254644