Commit graph

7588 commits

Author SHA1 Message Date
Rene Groeschke
1e0b61419a
[7.17] Update Gradle wrapper to 8.8 (#108021) (#109348)
Fix incompatibility with 8.8 and our internal api usages

- Update ospackage to a version that contains a fix we provided
- Tweak build logic to avoid deprecation warnings
- Use newer permission api
- Use custom shadowplugin
- Rework ElasticsearchDistribution dependencies resolution
- Update Gradle wrapper to 8.8
- Fix one more deprecated permission api usage
- Fix DistroTest dependencies
- Fix permissions in package init.d folder
2024-06-18 16:45:31 +02:00
elasticsearchmachine
10670ce5ad Bump versions after 7.17.22 release 2024-06-13 15:15:24 +00:00
Jake Landis
00632845d2
Reintroduce 7.17 Backport for DLS changes (#109494)
* Reapply "[7.17] Backport DLS changes (#108330)" (#109349)

This reverts commit 692a1a2448.

* re-implement excludeDeleteDocs as hack

* Revert "re-implement excludeDeleteDocs as hack"

This reverts commit 6006031692.

* re-implement serialization with metadata

* use correct xContent

* fix unmodifiable exception

* [review comments] use constant and underscore prefix
2024-06-13 09:05:25 +10:00
Nhat Nguyen
5e2fac3da5
Add remove index setting command (#109276) (#109328)
The new subcommand elasticsearch-node remove-index-settings can be used
to remove index settings from the cluster state in case where it
contains incompatible index settings that prevent the cluster from
forming. This tool can cause data loss and its use should be your last
resort.

Relates #96075
2024-06-05 02:07:22 +10:00
Jake Landis
692a1a2448
Revert "[7.17] Backport DLS changes (#108330)" (#109349)
This reverts commit 4e08df5 (#108330)
This commit also fixes #109273 in 7.17.
2024-06-04 10:20:58 -05:00
Jake Landis
4e08df5bda
[7.17] Backport DLS changes (#108330)
This commit introduced stricter DLS rules and is a manual backport of #105709 and #105714 
with additional node level settings to optionally disable the stricter DLS rules. 
Since these settings are not present in 8.x the needed deprecation info API entries have also 
been added to help inform any users that may have set these values to remove them before upgrading.
2024-06-03 10:58:38 -05:00
Martijn van Groningen
e4ef0ff0d9
Disable index.mapper.dynamic index setting validation. (#109160)
This setting was removed via #25734, because the setting no longer used
since 6.0.0

However, the validation only kicked when trying to set this setting on a
closed index. Applying the setting on an open index would just work.
With severe consequences later on. For example when upgrading the
cluster, nodes would refuse to boot, because the validation would kick
in.

Relates to #96075
2024-05-29 09:42:28 -04:00
Simon Cooper
ad03ad6caf
[7.17] Increase interval for task change interval check to prevent stalls failing the test (#94145) (#108667)
Backport #94145 to 7.17
2024-05-15 10:49:55 +01:00
elasticsearchmachine
371e4f8a78 Bump versions after 7.17.21 release 2024-05-03 15:39:48 +00:00
Simon Cooper
91f217c9f0
Backport #107481 to 7.17 (#108003)
Block specific config files from being accessed after startup (#107481)

Some files should never be accessed by ES or plugin code once startup has completed. Use the security manager to block these files from being accessed by anything at all. The current blocked files are elasticsearch.yml, jvm.options, and the jvm.options.d directory.
2024-04-30 15:02:35 +01:00
Brian Seeders
1f53c9208b
Bump versions after 7.17.20 release 2024-04-10 11:54:50 -04:00
elasticsearchmachine
af2c523cdf Bump versions after 7.17.19 release 2024-03-26 20:00:24 +00:00
David Turner
009950dae5
Fix testScheduledFixedDelayRejection (#106630) (#106643)
Not really necessary to allow the scheduled task to race against the
blocks, and this race is a source of test flakiness. Fixed by imposing
the blocks first.

Closes #106618
2024-03-22 04:47:15 -04:00
David Turner
d74e9f8070 AwaitsFix for #106618 2024-03-21 16:44:38 +00:00
David Turner
92f290e953
Relax cleanup check in SnapshotStressTestsIT (#106569)
We can't assert no leaked blobs here because today the first cleanup
leaves the original `RepositoryData` in place so the second cleanup is
not a no-op.

Relates #100718
Backport of #100855 to 7.17
2024-03-20 13:08:42 -04:00
David Turner
ff776e42c6
Force execution of SearchService.Reaper (#106555)
If the search threadpool fills up then we may reject execution of
`SearchService.Reaper` which means it stops retrying. We must instead
force its execution so that it keeps on going.

With #106542, closes #106543
Backport of #106544 to 7.17
2024-03-20 11:34:45 -04:00
David Turner
a86aacd35f
Integrate threadpool scheduling with AbstractRunnable (#106552)
Today `ThreadPool#scheduleWithFixedDelay` does not interact as expected
with `AbstractRunnable`: if the task fails or is rejected then this
isn't passed back to the relevant callback, and the task cannot specify
that it should be force-executed. This commit fixes that.

Backport of #106542 to 7.17
2024-03-20 11:08:24 -04:00
Benjamin Trent
ee99b6c2e9
Update to latest Lucene bugfix version 8.11.3 (#106365) 2024-03-18 07:19:07 -04:00
Moritz Mack
63eeed8374
Fix random timezone id selection to be consistent with DateUtilsTests.testTimezoneIds (#105989) 2024-03-06 07:35:15 +01:00
Moritz Mack
8e0539586a
Ignore America/Pangnirtung and Pacific/Kanton in timezone tests (#105976) 2024-03-05 17:29:55 +01:00
Moritz Mack
43606189fa
Ignore Europe/Kyiv in timezone tests (#105862)
Closes #105841
2024-03-04 20:58:48 +01:00
Jonathan Buttner
b8d715a00f
Test mute for #105841 (#105925)
Muting test for https://github.com/elastic/elasticsearch/issues/105841
2024-03-04 12:40:40 -05:00
Ryan Ernst
f569a472a2
Ignore America/Ciudad_Juarez in timezone tests (#105815) 2024-02-27 12:06:15 +01:00
Artem Prigoda
85259a1a6d
Mute ConcurrentSnapshotsIT#testDeleteIndexWithOutOfOrderFinalization (#105644) 2024-02-20 12:14:35 +01:00
Keith Massey
874a1dc991
Limiting the number of nested pipelines that can be executed (#105428) (#105533)
Limiting the number of nested pipelines that can be executed within a single pipeline to 100
2024-02-15 07:50:27 -06:00
Keith Massey
7273e0243d
Adding executedPipelines to the IngestDocument copy constructor (#105427) (#105527) 2024-02-14 16:38:17 -06:00
Keith Massey
4d09f96f10
Improving the performance of the ingest simulate verbose API (#105265) (#105513)
This updates the simulate verbose API to run in O(N) (for number of pipelines)
time and memory like the simulate and ingest APIs rather than O(N^2).
2024-02-14 13:46:29 -06:00
Keith Massey
9b6cf272b6
Adding a custom exception for problems with the graph of pipelines to be applied to a document (#105196) (#105473)
This PR removes the need to parse the exception message to detect if a cycle has been detected
in the ingest pipelines to be run on a document.
2024-02-14 10:46:02 -06:00
Keith Massey
d57de7d01f
Adding some tests for many nested pipeline processors (#105291) (#105471) 2024-02-14 10:43:04 -06:00
David Turner
ce7d540206
Fix testTargetThrottling (#105286)
Backports #103397 to 7.17

Closes #104693
2024-02-08 09:13:25 -05:00
elasticsearchmachine
23f055a3f0 Bump versions after 7.17.18 release 2024-02-06 17:48:38 +00:00
Joe Gallo
c845bcda3c
[7.17] Ingest correctly handle upsert operations and drop processors together ( #104585) (#104887) 2024-01-30 12:24:09 -05:00
Joe Gallo
378c22a682
Better handling of async processor failures (#104289) (#104768) 2024-01-25 11:56:43 -05:00
Simon Cooper
76be62ad6f
Ignore Antarctica/Vostok timezone differences (#104610)
Antarctica/Vostok, it has been updated by tzdata 2023d, which leads to different timezone offsets between joda and the jdk
2024-01-25 09:40:58 +00:00
Simon Cooper
a307e81bd7
Ensure there's only one newline added with new version declarations (#104519) (#104689)
Backport #104519 to 7.17
2024-01-24 12:11:17 +00:00
Iraklis Psaroudakis
06bb0bdc8c
Mute testTimezoneIds (#104691)
Relates #104544
2024-01-24 06:31:33 -05:00
Brian Seeders
23bb7612ca
Bump versions after 7.17.17 release 2024-01-23 12:32:08 -05:00
David Turner
6481e8a763
Fix deleting index during snapshot finalization (#104380)
* Fix deleting index during snapshot finalization

Today if an index is deleted during a very specific order of snapshot
finalizations then it's possible we'll miscalculate the latest shard
generations for the shards in that index, causing the deletion of a
shard-level `index-UUID` blob which prevents further snapshots of that
shard.

Backports #103817 to 7.17
Closes #101029

* Test fixup
2024-01-18 05:38:18 -05:00
Chris Hegarty
af3f8e5d67
[7.17] Update ExecutorScalingQueue to workaround LinkedTransferQueue JDK bug (#104347) (#104425)
* Update ExecutorScalingQueue to workaround LinkedTransferQueue JDK bug (#104347)

This commit adds a few overrides to ExecutorScalingQueue (subclass of LinkedTransferQueue) to workaround a JDK bug in LinkedTransferQueue.

* remove usage of var

* fix compilation
2024-01-17 06:24:04 -05:00
David Turner
b6114f4c82
Fix snapshot version in createSnapshotLegacy (#104354)
We shouldn't use `Version#CURRENT` for the snapshot version anywhere,
but especially not on the legacy path.

Closes #86889
2024-01-15 09:16:41 +00:00
Mark Vieira
9923a8719f
Remove BWC testing of snapshot 6.8 versions (#104226) 2024-01-10 14:21:56 -08:00
Lorenzo Dematté
bfe46b43e2
[7.17] Add full GC fallback within the current attempt (#102563) (#103505)
* Add full GC fallback within the current attempt (#102563)

* Add full GC fallback within the current attempt
* Try re-acquire the lock if we timed out due to a full GC
* Condition full GC to memory reclaimed only

* Fix: transform record to private static class
2023-12-18 09:47:40 -05:00
David Turner
450dfc53c1
[7.17] Dispatch ClusterStateAction#buildResponse to executor (#103435) (#103443)
If waiting for a particular cluster state (e.g. on the CCR leader) we
will compute the resulting cluster state and serialize it on the cluster
applier thread, which can be too expensive in a large cluster for this
thread. With this commit we dispatch the final action back to the
original executor.
2023-12-14 15:48:09 +00:00
Brian Seeders
4c7876dcb1
Bump versions after 7.17.16 release 2023-12-13 10:48:34 -05:00
Mary Gouseti
253f1f430f
[7.17] [ILM] More resilient when a policy is added to searchable snapshot (#102741) (#103070)
* Backport #102741
2023-12-06 20:08:15 +02:00
Ignacio Vera
33cbb8ee23
Add more logging to the real memory circuit breaker and lower minimum interval (#102396) (#102443)
It lowers the minimumInterval from 5000ms to 500ms as we observed high number of CBEs when there are bursting 
allocations in newer JDKs.
2023-11-22 02:44:30 -05:00
David Turner
4992962f19
[7.17] Unwrap exception more tenaciously in testQueuedOperationsAndBrokenRepoOnMasterFailOver (#102352) (#102368)
* Unwrap exception more tenaciously in testQueuedOperationsAndBrokenRepoOnMasterFailOver (#102352)

There can be more than 10 layers of wrapping RTEs, see #102351. As a
workaround to address the test failure, this commit just manually
unwraps them all.

Closes #102348

* Fixup
2023-11-20 04:08:45 -05:00
Lorenzo Dematte
1a67f09021 Bump versions after 7.17.15 release 2023-11-14 08:29:05 +01:00
David Turner
5ab8599ab1
Protect NodeConnectionsService from stale conns (#101988)
A call to `ConnectionTarget#connect` which happens strictly after all
calls that close connections should leave us connected to the target.
However concurrent calls to `ConnectionTarget#connect` can overlap, and
today this means that a connection returned from an earlier call may
overwrite one from a later call. The trouble is that the earlier
connection attempt may yield a closed connection (it was concurrent with
the disconnections) so we must not let it supersede the newer one.

With this commit we prevent concurrent connection attempts, which avoids
earlier attempts from overwriting the connections resulting from later
attempts.

Backport of #92558
When combined with #101910, closes #100493
2023-11-09 16:13:03 -05:00
David Turner
7d975abbd0
Delay Connection#onRemoved while pending (#101910)
Today we call `Transport.Connection#onRemoved`, notifying any
removed-listeners, when the connection is closed and removed from the
`connectedNodes` map. However, it's possible for the connection to be
closed while we're still adding it to the map and setting up the
listeners, so this now-dead connection will still be found in the
`pendingConnections` and may be returned to a future call to
`connectToNode` even if this call was made after all the
removed-listeners have been called.

With this commit we delay calling the removed-listeners until the
connection is closed and removed from both the `connectedNodes` and
`pendingConnections` maps.

Backport of #92546 to 7.17
Relates #100493
2023-11-09 19:53:16 +00:00