Commit graph

10505 commits

Author SHA1 Message Date
github-actions[bot]
d4fdcda309
[ci] JDK matrix Buildkite pipelines (pt 2/Windows) (#15563) (#15568)
This commit adds JDK matrix Buildkite pipelines for
Windows 2022, 2019 and 2016.

It also makes the groups easier to read (on both Linux and Windows
pipelines) by removing the os-jdk prefix from the job labels.

`testDLQWriterFlusherRemovesExpiredSegmentWhenCurrentHeadSegmentIsEmpty`
fails on Windows Buildkite agents and it's a test issue tracked in
https://github.com/elastic/logstash/issues/15562.

Relates:

- https://github.com/elastic/logstash/pull/15539
- https://github.com/elastic/ingest-dev/issues/1725

(cherry picked from commit 0ede19a0e1)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-11-13 19:10:51 +02:00
github-actions[bot]
86fba91cee
[ci] JDK matrix Buildkite pipelines (part 1) (#15539) (#15554)
This commit is the first part of the migration of JDK matrix tests
from Jenkins to Buildkite. There will be two separate pipelines, for
Linux and Windows.

Linux is currently limited to Ubuntu 22.04 and 20.04, but
additional operating systems will be added outside of the Logstash
repository seamlessly through additional VM images.

Steps are created dynamically and the underlying script is meant to be
common for Linux and Windows. Windows is currently a stub and
will be added in a follow up PR.

Relates:

- https://github.com/elastic/ingest-dev/issues/1725
- https://github.com/elastic/ci-agent-images/pull/424

(cherry picked from commit 956bf483f2)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-11-09 11:18:08 +02:00
github-actions[bot]
d908fb8dfc
[ci] Split JDK matrix pipelines per OS (#15534) (#15537)
This commit splits the generic Buildkite pipelines introduced
in #15520 for JDK tests to separate pipelines for Linux and Windows.

(cherry picked from commit 07147b3e40)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-11-07 16:18:42 +02:00
github-actions[bot]
7c5b19c145
[ci] Initial JDK matrix Buildkite pipeline (#15520) (#15522)
This commit adds a skeleton Buildkite pipeline for the JDK matrix tests.

Relates:

- https://github.com/elastic/logstash/pull/15519
- https://github.com/elastic/ingest-dev/issues/1725

(cherry picked from commit ccc41d76ff)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-11-02 18:22:59 +02:00
github-actions[bot]
faa0c144d0
[ci] aarch64 Buildkite pipeline part 2 (#15473) (#15505)
This commit is the follow up PR after #15466, which migrates away
the remaining aarch64 acceptance test Jenkins jobs to Buildkite.

Relates:

- #15466
- https://github.com/elastic/ingest-dev/issues/1724

(cherry picked from commit c384190718)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-26 09:38:38 +03:00
github-actions[bot]
f272d71480
[ci] re-enable Java unit tests on aarch64 pipeline (#15492) (#15494)
PR#15466 skipped the Java unit tests as on the `main` and `8.11`
branches they attempted to run sonar scans (which are only meant to
run for PRs).

This commit re-enables the Java unit tests, taking advantage of #15486,
disabling the sonar scan part of the test suite.

(cherry picked from commit 16da966290)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-25 11:40:52 +03:00
github-actions[bot]
46e4e3917a
[ci] aarch64 Buildkite pipeline part 1 (#15466) (#15483)
This commit is the first part of migrating away the aarch64 Jenkins
jobs to Buildkite. It adds a group of exhaustive test steps in the
aarch64 pipeline.

The java unit tests are temporarily disabled as they run SonarQube
scans which need to be associated with pull requests.

Relates:

https://github.com/elastic/ingest-dev/issues/1724
(cherry picked from commit 36656de4f0)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-24 09:24:36 +03:00
github-actions[bot]
1f0f0fbb8d
[ci] Initial aarch64 Buildkite pipeline (#15460) (#15467)
This commit adds a skeleton Buildkite pipeline for aarch64
exhaustive tests.

- https://github.com/elastic/logstash/pull/15459
- https://github.com/elastic/ingest-dev/issues/1724

(cherry picked from commit 0083738cde)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-18 14:47:46 +03:00
Rob Bavey
b5f19d61ff
Version bump to 8.10.5 (#15462) 2023-10-17 09:19:27 -04:00
github-actions[bot]
821e20ce73
Release notes for 8.10.4 (#15435)
* Update release notes for 8.10.4
Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
Co-authored-by: Karen Metts <karen.metts@elastic.co>
2023-10-17 09:19:07 -04:00
github-actions[bot]
a4f0d3422f
[docs] Small typo fixes in README (#15429) (#15456)
Fix a few typos in the Logstash README.md

(cherry picked from commit 784ca0243e)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-17 09:50:17 +03:00
github-actions[bot]
6f896054ab
Migrate remaining PR jobs to Buildkite #15444 (#15448)
This commit adds the remaining steps for the Buildkite pull request pipeline i.e.

- `IT Persistent Queues / part 1`
- `IT Persistent Queues / part 2`
- `x-pack unit tests`
- `x-pack integration`

Once merged we will be able to retire the corresponding Logstash pull request multijob.

Relates:

- https://github.com/elastic/logstash/pull/15438
- https://github.com/elastic/logstash/pull/15437
- https://github.com/elastic/ingest-dev/issues/1721
- https://github.com/elastic/logstash/pull/15279

(cherry picked from commit 555a8ff8e3)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-16 09:49:44 +03:00
github-actions[bot]
b2f4b7bef4
[ci] Add PR it-tests (part 1+2) to Buildkite (#15438) (#15446)
This commit adds integration tests to the
Buildkite PR pipeline.

Relates:

- https://github.com/elastic/logstash/pull/15437
- https://github.com/elastic/ingest-dev/issues/1721
- https://github.com/elastic/logstash/pull/15279

(cherry picked from commit 816d7e6b2b)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-13 21:45:07 +03:00
github-actions[bot]
f8c616c87c
[ci] Commit PR based Java unit tests for Buildkite (#15437) (#15442)
This commit adds Java unit tests (including sonar scans) to the
Buildkite pull request pipeline.

Relates: https://github.com/elastic/ingest-dev/issues/1721
(cherry picked from commit e285425d54)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2023-10-13 11:56:02 +03:00
Dimitrios Liappis
3a0aac850f
[ci] Backport Buildkite PR pipeline to 8.10 (#15431)
This is a backport of the initial Pull Request pipeline for Buildkite.

While currently we haven't migrated all PR jobs from Jenkins, this is needed so PRs against non `main` branches don't fail this step (also giving us the possibility to test functionality against non `main` branches).

Relates:

- #15402
- #15413
- #15415
- #15421
- https://github.com/elastic/ingest-dev/issues/1721

## Release notes
[rn:skip]
2023-10-12 17:36:47 +03:00
Mashhur
5a454c1269
Update core to 8.10.4 (#15422) 2023-10-10 10:14:45 -07:00
github-actions[bot]
5dc58c3b3e
Update Guava dependency to 32.1.2 (#15394) (#15419)
(cherry picked from commit c0e812158c)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2023-10-10 19:02:26 +02:00
Dimitrios Liappis
5ce593cc08
[ci] Fix backport bug for 8.10 with buildkite DRA (#15406)
PR#15392 (which was a backport to `8.10` branch for the Buildkite DRA
scripts) had a bug.

This commit moves the dra scripts under the right directory as used
in the other branches.
2023-10-10 12:26:38 +03:00
github-actions[bot]
a88f82e77f
Release notes for 8.10.3 (#15390)
* Add known imap and email plugin issues section to Logstash 8.10+ versions.

Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2023-10-09 19:58:16 -04:00
Dimitrios Liappis
bdc7f26c23
[ci] Backport Buildkite DRA pipeline+scripts to 8.10 (#15392)
This is a backport of the DRA pipeline and related scripts from:

- #15366
- #15365
- #15356
- #15352
- #15344
- #15343
- #15337
- #15312

Note that it's a manual backport because some PRs (e.g. #15312) contain files (`catalog-info.yaml`) that should only
live on the `main` branch.
2023-10-06 10:28:13 +03:00
github-actions[bot]
63339bee98
bump lock file for 8.10 (#15385)
* Update patch plugin versions in gemfile lock

* Apply suggestions from code review

Remove unnecessary universal-java-11 dependency

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2023-10-04 09:19:20 -07:00
github-actions[bot]
a62cdce6a1
bump lock file for 8.10 (#15376)
* Update patch plugin versions in gemfile lock

* Apply suggestions from code review

Remove unnecessary `universal-java-11` dependency.

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2023-10-04 00:07:30 -07:00
github-actions[bot]
69ea40cc9d
[backport 8.10] Expanded the description how to size the memory of the JVM (#15210) (#15350)
Expands the description of memory used by Logstash, dividing the heap and non-heap; describing in details which parts composes the non-heap, how to size it and list the JVM settings that can be used to properly define this space.

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
(cherry picked from commit b31c429d19)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2023-09-26 11:39:48 +02:00
Andrea Selva
872f5a177b
Bump 8.10.3 (#15338) 2023-09-21 11:04:13 +02:00
github-actions[bot]
a0426a0662
Release notes for 8.10.2 (#15336)
* Update release notes for 8.10.2

* Update 8.10.2 release notes.

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
2023-09-20 17:46:27 -07:00
github-actions[bot]
f6d9a989f0
bump lock file for 8.10 (#15334)
* Update patch plugin versions in gemfile lock

* Update Gemfile.jruby-3.1.lock.release

Remove `universal-java-11` dependency.

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2023-09-20 10:58:07 -07:00
João Duarte
cc67511c41
bump version to 8.10.2 (#15328) 2023-09-18 16:50:12 +01:00
João Duarte
aa9265665e
Fix releasenotes.asciidoc for 8.10.1 (#15327)
Since the DRA build for 8.10.1 was made with 82daae80bb , this fix didn't get in.
2023-09-18 11:11:50 -04:00
github-actions[bot]
4ae4db31fb
Release notes for 8.10.1 (#15326)
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-09-18 10:47:39 -04:00
github-actions[bot]
745225ec79
fix NPE when getting native thread id (#15301) (#15321)
This commit adds null guard to get the native thread when constructing pipeline report

Fix: #15300
(cherry picked from commit cd78558121)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2023-09-14 21:02:50 +01:00
github-actions[bot]
d040e88653
disable xpack API and monitoring pipeline for serverless (#15277) (#15296)
This commit adds a call to identify serverless cluster before fetching `/_xpack` to verify the license and supported features.
When it is serverless, the license checker uses hardcoded xpack info instead of calling xpack API. The internal pipeline of monitoring is disabled and logs error when configured to use legacy monitoring.

Fixes:
ingest-dev#2303
ingest-dev#2284

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
(cherry picked from commit 6b2fa20622)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2023-09-12 18:01:49 +01:00
kaisecheng
82daae80bb
bump 8.10.1 (#15314) 2023-09-12 12:05:57 +01:00
github-actions[bot]
0e1d1af9cf
Release notes for 8.10.0 (#15265)
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2023-09-12 02:01:36 +01:00
Andrea Selva
7dff37bffb
Forward port 8.9.2 release notes to 8.10 (#15311)
* Forward port 8.9.2 release notes to 8.10
2023-09-08 14:47:32 +02:00
João Duarte
8e5676d7c6
Update .ruby-version to 9.3.10.0 (#15303) 2023-09-05 09:26:56 +01:00
Ry Biesemeyer
df250c4ae2
deps: downgrade jruby, keep updated default-gem dependencies (#15283)
* deps: downgrade jruby, keep updated default-gem dependencies

By downgrading JRuby to 9.4.2.0 we avoid the silent global crash of the
scheduler backing `Concurrent::TimerTask` that occurs when Jruby 9.4.3.0's
invokedynamic promotes a method to run natively, incorrectly.

Upstream bug: https://github.com/jruby/jruby/issues/7904

Along with the downgrade of JRuby itself to 9.4.2.0, we cherry-pick the
updates to gems that were included in the latest JRuby 9.4.3.0 to ensure
we don't back out relevant fixes to stdlib.

We also remove a pinned-dependency on `racc` that is no longer relevant.

Resolves: https://github.com/elastic/logstash/issues/15282

* Imported the licenses for some gems

- cgi
- date
- ffi-binary-libfixposix
- io-console
- net-http
- net-protocol
- reline
- time
- timeout
- uri

* specs: avoid mocking global ::Gem::Dependency::new

* build: remove redundanct dependsOn declaration

* deps: notice use of ffi-binary-libfixposix via Ruby license

this gem is tri-licensed `Ruby` / `EPL-2.0` / `LGPL-2.1-or-later` and
the Ruby license is preferred to EPL when available

---------

Co-authored-by: andsel <selva.andre@gmail.com>
2023-08-29 14:38:56 -07:00
github-actions[bot]
b4332b4e90
Remove DepProxy patch, as Bundler::DepProxy is removed in Bundler 2.4.0 (#15269) (#15270)
(cherry picked from commit fe1b1ed1da)

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2023-08-22 11:18:24 -04:00
github-actions[bot]
c93999f4a2
Fix the update of Puma (#15271) (#15272)
Revert PR #15267 which updated Puma in Gemfile.template and correctly place it in logstash-core.gemspec, beeing a dependency of Logstash core.

(cherry picked from commit 58e23fbdc3)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2023-08-22 13:16:17 +02:00
github-actions[bot]
8303330b01
Update Puma (#15267) (#15268)
Update Puma dependency

(cherry picked from commit afc50eb676)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2023-08-21 15:29:04 +02:00
github-actions[bot]
3b6bab5cc1
Release notes for 8.9.1 (#15244) (#15260)
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Kaise Cheng <kaise.cheng@elastic.co>
(cherry picked from commit db86da61db)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-08-16 17:44:31 +01:00
github-actions[bot]
ef20a5543b
Fix update oldest segment reference order (#15246) (#15258)
The DeadLetterQueueWriter#updateOldestSegmentReference was sorting the existing segments by the lexicographic file names. For example, if there are a few segments on the DQL path with index 8, 9 and 10, it was choosing the 10 as the oldest segment instead of 8.
This commit changed it to comparing the segment ID as numbers, so the file deletion will happen following the proper order.

(cherry picked from commit 499091824b)

Co-authored-by: Edmo Vamerlatti Costa <11836452+edmocosta@users.noreply.github.com>
2023-08-16 10:49:43 +02:00
github-actions[bot]
73ab7d6c0a
bump rake 13 for jruby 9.4 compatibility (#15256) (#15257)
(cherry picked from commit 04fd0840fe)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-08-15 22:46:53 +01:00
github-actions[bot]
9e18f822be
bump lock file for 8.10 (#15254)
* Update minor plugin versions in gemfile lock

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Kaise Cheng <kaise.cheng@elastic.co>
2023-08-15 17:26:25 +01:00
Kaise Cheng
b26ea804d0 rename Gemfile 2023-08-15 12:13:03 +01:00
Kaise Cheng
f08ddbf548 Gemfile lock 2023-08-15 11:54:09 +01:00
Mashhur
e890049c1b
Pipeline to pipeline communication acked queue improvements. (#15173)
* Pipeline to pipeline communication acked queue improvements.

* Handle InterruptedException exception in input back, warn message improvement when in-flight events are partially sent and other minor such as descriptive logs, etc improvements.

* Apply suggestions from code review

Check if queue is open after thread acquires the lock.

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>

* Apply suggestions from code review

Unite test case improvement: use `assertThrows` when validating the exception.

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>

* Pulling off of introducing  wrap with  operations.

* Introduce  functional interface to broadly use to catch the exception types.

* Addressing comments: do not retry sending inflight events on  case. We still throw  if we get error when opening queue.

* will not be reached input retry logic, removing.

* Move queue close check after thread acquiring a lock. Make read next page interface private since it is an internal use purpose.

* Apply suggestions from code review

Leave a comment for the write lock and remove unnecessary warning with `ensure_delivery=>false`

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>

* Remove unused  method, check if current thread acquired lock when accessing next page.

* pq: getting possibly-shared access to next read page is illegal

The private `Queue#nextReadPage()` method requires that the caller has
exclusive ownership of the lock, and failing to have the lock is an
illegal state that cannot be recoverd from; it would leak the
effectively-private `Page` to a caller that cannot reliably use it
without corrupting other callers.

Both callers of this private method already call it with exclusive
access, so this safeguard is merely to prevent future development from
breaking the expectation unknowingly.

As such, we throw an `IllegalStateException`.

* pq: use shared queue-closed check for block and non-block reads

By moving the closed-check from the blocking `Queue#readBatch` to the
shared private `Queue#nextReadPage`, we ensure that both blocking reads
by `Queue#readBatch` and non-blocking reads by `Queue#nonBlockReadBatch`
behave the same when the queue has been closed.

* pq: make exception message constants descriptive

* p2p: clarify comment about cumulating retry behaviour

---------

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
Co-authored-by: Ry Biesemeyer <ry.biesemeyer@elastic.co>
2023-08-08 16:05:41 -07:00
Rob Bavey
fd1b3498dd
Forward port of release notes from 8.9.0 (#15230)
Contains the following PRs

Release notes for 8.9.0 (#15162)
8.9 Release notes updated. (#15221)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2023-08-08 18:00:58 -04:00
Edmo Vamerlatti Costa
88f42f334e
Fix DeadLetterQueueWriter unable to finalize segment error (#15233)
This commit moves the Files.size(...) call into the try catch block, that way, when the oldest segment is deleted by the DeadLetterQueueReader, no NoSuchFileException will be thrown up, and the writer will gracefully update the oldest segment on the next updateOldestSegmentReference invocation (scheduled flush, entry write, delete expired, etc).
It also adds the volatile keyword to the shared mutable variables, making sure that all the changes will be instantly visible among all the running threads (scheduler & writer).
2023-08-08 16:06:44 +02:00
kaisecheng
9af7c7cef4
Serverless test against restricted API key (#15224)
This commit changes the serverless tests to use a restricted API key with necessary permissions and disables Logstash legacy monitoring test.

Fixes: #15234

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-08-02 15:27:46 +01:00
James Rodewig
d196496f36
doc: remove breaking change tags (#15231)
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2023-08-01 19:04:10 -04:00