Commit graph

10898 commits

Author SHA1 Message Date
github-actions[bot]
8fc4b75e66
bump lock file for 8.16 (#17153)
* Update patch plugin versions in gemfile lock

* Remove universal-java-17 to remain consistent with previous version

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2025-02-26 08:34:40 -05:00
github-actions[bot]
bbc80ec0ff
Add Windows 2025 to CI (#17133) (#17145)
This commit adds Windows 2025 to the Windows JDK matrix and exhaustive tests pipelines.

(cherry picked from commit 4d52b7258d)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2025-02-24 16:48:53 +02:00
github-actions[bot]
4205eb7a75
allow concurrent Batch deserialization (#17050) (#17108)
Currently the deserialization is behind the readBatch's lock, so any large batch will take time deserializing, causing any other Queue writer (e.g. netty executor threads) and any other Queue reader (pipeline worker) to block.

This commit moves the deserialization out of the lock, allowing multiple pipeline workers to deserialize batches concurrently.

- add intermediate batch-holder from `Queue` methods
- make the intermediate batch-holder a private inner class of `Queue` with a descriptive name `SerializedBatchHolder`

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
(cherry picked from commit 637f447b88)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-02-17 22:22:50 +00:00
github-actions[bot]
4d04d6c7a4
CPM handle 404 response gracefully with user-friendly log (#17052) (#17100)
Starting from es-output 12.0.2, a 404 response is treated as an error. Previously, central pipeline management considered 404 as an empty pipeline, not an error.

This commit restores the expected behavior by handling 404 gracefully and logs a user-friendly message.
It also removes the redundant cache of pipeline in CPM

Fixes: #17035
(cherry picked from commit e896cd727d)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-02-17 13:51:22 +00:00
github-actions[bot]
a7ca91af8d
Allow capturing heap dumps in DRA BK jobs (#17081) (#17088)
This commit allows Buildkite to capture any heap dumps produced
during DRA builds.

(cherry picked from commit 78c34465dc)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2025-02-14 09:38:11 +02:00
Dimitrios Liappis
f9606502ec
Fix conflicts (#17076) 2025-02-12 10:45:13 -08:00
github-actions[bot]
ce8d43f39b
Don't honor VERSION_QUALIFIER if set but empty (#17032) (#17071)
PR #17006 revealed that the `VERSION_QUALIFIER` env var gets honored in
various scripts when present but empty.
This shouldn't be the case as the DRA process is designed to gracefully
ignore empty values for this variable.

This commit changes various ruby scripts to not treat "" as truthy.
Bash scripts (used by CI etc.) are already ok with this as part of
refactorings done in #16907.

---------

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
(cherry picked from commit c7204fd7d6)

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2025-02-12 15:55:29 +02:00
github-actions[bot]
69e554b799
inject VERSION_QUALIFIER into artifacts (#16904) (#17049) (#17066)
VERSION_QUALIFIER was already observed in rake artifacts task but only to influence the name of the artifact.

This commit ensure that the qualifier is also displayed in the cli and in the http api.

(cherry picked from commit 00f8b91c35)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-02-12 09:10:35 +00:00
Ry Biesemeyer
6dceb2453d
version bump 8.16.5 (#17053) 2025-02-11 08:33:49 -08:00
github-actions[bot]
168f969013
Release notes for 8.16.4 (#17043)
* Update release notes for 8.16.4

* humanize release notes 8.16.4

* Apply suggestions from code review

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2025-02-10 22:40:02 -08:00
github-actions[bot]
3a35abc24e
bump lock file for 8.16 (#17023)
* Update patch plugin versions in gemfile lock

* pull in minors from ES input and filter

* remove addition of java 17 platform

already covered by `java` platform

* pull in minor from http input to get fixed netty thread names

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Ry Biesemeyer <ry.biesemeyer@elastic.co>
Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2025-02-05 10:07:11 -08:00
github-actions[bot]
002d4897c4
Backport PR #16968 to 8.16: Fix BufferedTokenizer to properly resume after a buffer full condition respecting the encoding of the input string (#16968) (#17021)
Backport PR #16968 to 8.16 branch, original message:

----

Permit to use effectively the tokenizer also in context where a line is bigger than a limit.
Fixes an issues related to token size limit error, when the offending token was bigger than the input fragment in happened that the tokenzer wasn't unable to recover the token stream from the first delimiter after the offending token but messed things, loosing part of tokens.

## How solve the problem
This is a second take to fix the processing of tokens from the tokenizer after a buffer full error. The first try #16482 was rollbacked to the encoding error #16694.
The first try failed on returning the tokens in the same encoding of the input.
This PR does a couple of things:
- accumulates the tokens, so that after a full condition can resume with the next tokens after the offending one.
- respect the encoding of the input string. Use `concat` method instead of `addAll`, which avoid to convert RubyString to String and back to RubyString. When return the head `StringBuilder` it enforce the encoding with the input charset.

(cherry picked from commit 1c8cf546c2)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2025-02-05 12:15:37 +01:00
João Duarte
32e6def9f8
Upgrade JDK to 21.0.6+7 (#16990) 2025-01-30 15:57:06 +00:00
Mashhur
4e87a30c1c
Validate the size limit in BufferedTokenizer. (#16882) (#16892)
(cherry picked from commit a215101032)
2025-01-29 13:52:33 -08:00
github-actions[bot]
589f1b652d
plugin manager: add --level=[major|minor|patch] (default: minor) (#16899) (#16975)
* plugin manager: add `--level=[major|minor|patch]` (default: `minor`)

* docs: plugin manager update `--level` behavior

* Update docs/static/plugin-manager.asciidoc

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>

* docs: plugin update major as subheading

* docs: intention-first in major plugin updates

* Update docs/static/plugin-manager.asciidoc

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>

---------

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

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2025-01-28 17:18:54 -08:00
github-actions[bot]
430424aac8
[doc] fix the necessary privileges of central pipeline management (#16902) (#16976)
CPM requires two roles logstash_admin and logstash_system

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
(cherry picked from commit dc740b46ca)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-01-28 18:35:22 +00:00
kaisecheng
5ead3a9880
add openssl command to wolfi image (#16972) 2025-01-28 17:31:56 +00:00
github-actions[bot]
baa181ae39
remove irrelevant warning for internal pipeline (#16938) (#16964)
This commit removed irrelevant warning for internal pipeline, such as monitoring pipeline.
Monitoring pipeline is expected to be one worker. The warning is not useful

Fixes: #13298
(cherry picked from commit 3f41828ebb)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-01-27 17:30:08 +00:00
Andrea Selva
ed38254f45
[Backport 8.x] Reimplement LogStash::String setting in Java (#16576) (#16959) (#16961)
Non clean backport of #16959 from 8.x to 8.16 (which is a non clean backport of #16576 to 8.x)

Changes respect to 8.x:
- in 8.x the `with_deprecated_alias` receives also a parameter specifying the version where the setting is removed. In this case we removed the extra parameter to the method a0378c05cb/logstash-core/lib/logstash/environment.rb (L79)
- fixed the test removing the check for the remove version a0378c05cb/logstash-core/spec/logstash/settings/setting_with_deprecated_alias_spec.rb (L157)

----

Reimplements `LogStash::Setting::String` Ruby setting class into the `org.logstash.settings.SettingString` and exposes it through `java_import` as `LogStash::Setting::SettingString`.
Updates the rspec tests in two ways:
- logging mock is now converted to real Log4J appender that spy log line that are later verified
- verifies `java.lang.IllegalArgumentException` instead of `ArgumentError` is thrown because the kind of exception thrown by Java code, during verification.

* Fixed the rename of NullableString to SettingNullableString

* Fixed runner test to use real spy logger from Java Settings instead of mock test double
2025-01-27 17:42:38 +01:00
github-actions[bot]
1adecfe3b7
fix user and password detection from environment's uri (#16955) (#16957)
(cherry picked from commit c8a6566877)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-01-27 11:51:07 +00:00
github-actions[bot]
f2a7b3022f
Increase Xmx used by JRuby during Rake execution to 4Gb (#16911) (#16944)
(cherry picked from commit 58e6dac94b)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2025-01-24 14:54:35 +01:00
Dimitrios Liappis
15e4e25048
Backport 16907 to 8.16: Use --qualifier in release manager (#16907) #16942
Backport of #16907 cherry picked from 9385cfa

This commit uses the new --qualifier parameter in the release manager
for publishing dra artifacts. Additionally, simplifies the expected
variables to rely on a simple `VERSION_QUALIFIER`.

Snapshot builds are skipped when VERSION_QUALIFIER is set.
Finally, for helping to test DRA PRs, we also allow passing the `DRA_BRANCH`  option/env var
to override BUILDKITE_BRANCH.

Closes https://github.com/elastic/ingest-dev/issues/4856
2025-01-24 14:52:58 +02:00
github-actions[bot]
2a4eb2da01
Doc: Remove extra symbol to fix formatting error (#16926) (#16936)
(cherry picked from commit f66e00ac10)

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2025-01-23 17:35:34 -05:00
github-actions[bot]
7f19931c77
fix jars installer for new maven and pin psych to 5.2.2 (#16919) (#16925)
handle maven output that can carry "garbage" information after the jar's name. this patch deletes that extra information, also pins psych to 5.2.2 until jruby ships with snakeyaml-engine 2.9 and jar-dependencies 0.5.2

Related to: https://github.com/jruby/jruby/issues/8579

(cherry picked from commit 52b7fb0ae6)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-01-22 17:00:17 +00:00
kaisecheng
3ac74007f2
bump core 8.16.4 (#16915) 2025-01-21 10:10:45 +00:00
github-actions[bot]
a3f7aece28
Release notes for 8.16.3 (#16879)
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2025-01-21 01:43:23 +00:00
github-actions[bot]
946c78c941
Initialize flow metrics if pipeline metric.collect params is enabled. (#16881) (#16889)
(cherry picked from commit 47d04d06b2)

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2025-01-09 13:31:56 -08:00
Mashhur
afeef994de
elastic_integration plugin version updated. (#16874) 2025-01-07 18:22:29 -08:00
github-actions[bot]
ad16facaae
bump lock file for 8.16 (#16869)
* Update patch plugin versions in gemfile lock

* Update Gemfile.jruby-3.1.lock.release

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-01-07 17:26:50 +00:00
github-actions[bot]
8716e77313
Doc: Add appropriate alternate for deprecated module in 8.x (#16856) (#16861)
(cherry picked from commit 4bf1fb514e)

Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2025-01-06 16:15:25 -05:00
Karen Metts
ed4b2e2f6f
Doc: Add json_lines known issue to 8.16 release notes (#16837) 2025-01-06 15:33:14 -05:00
João Duarte
1b1a76b03f
Update logstash-input-azure_event_hubs to 1.5.1 (#16849) 2025-01-03 16:10:58 +00:00
github-actions[bot]
ff27fae426
Apply Jackson stream read constraints defaults at runtime (#16832) (#16847)
When Logstash 8.12.0 added increased Jackson stream read constraints to
jvm.options, assumptions about the existence of that file's contents
were invalidated. This led to issues like #16683.

This change ensures Logstash applies defaults from config at runtime:
- MAX_STRING_LENGTH: 200_000_000
- MAX_NUMBER_LENGTH: 10_000
- MAX_NESTING_DEPTH: 1_000

These match the jvm.options defaults and are applied even when config
is missing. Config values still override these defaults when present.

(cherry picked from commit cc608eb88b)

Co-authored-by: Cas Donoghue <cas.donoghue@gmail.com>
2025-01-02 15:36:24 -08:00
github-actions[bot]
911f553dbc
Update patch plugin versions in gemfile lock (#16843)
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
2025-01-02 13:37:42 +00:00
github-actions[bot]
bd8a67c146
Avoid lock when ecs_compatibility is explicitly specified (#16786) (#16830)
Because a `break` escapes a `begin`...`end` block, we must not use a `break` in order to ensure that the explicitly set value gets memoized to avoid lock contention.

> ~~~ ruby
> def fake_sync(&block)
>   puts "FAKE_SYNC:enter"
>   val = yield
>   puts "FAKE_SYNC:return(#{val})"
>   return val
> ensure
>   puts "FAKE_SYNC:ensure"
> end
>
> fake_sync do
>   @ivar = begin
>     puts("BE:begin")
>   	break :break
>
>   	val = :ret
>   	puts("BE:return(#{val})")
>   	val
>   ensure
>     puts("BE:ensure")
>   end
> end
> ~~~

Note: no `FAKE_SYNC:return`:

> ~~~
> ╭─{ rye@perhaps:~/src/elastic/logstash (main ✔) }
> ╰─● ruby break-esc.rb
> FAKE_SYNC:enter
> BE:begin
> BE:ensure
> FAKE_SYNC:ensure
> [success]
> ~~~

(cherry picked from commit 01c8e8bb55)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2024-12-23 10:43:06 -08:00
github-actions[bot]
886a0c7ed7
update ironbank image to ubi9/9.5 (#16825) (#16827)
(cherry picked from commit dbb06c20cf)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2024-12-19 22:57:27 +00:00
João Duarte
2264a557ed
Fix docs dependencies link in 8.16.2 release notes (#16811) 2024-12-18 12:42:49 +00:00
João Duarte
11f433f7ec
bump to 8.16.3 (#16806) 2024-12-17 10:22:22 +00:00
github-actions[bot]
8497db1cd8
Release notes for 8.16.2 (#16799)
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2024-12-17 09:32:42 +00:00
github-actions[bot]
5521023240
Doc: Update security docs to replace obsolete cacert setting (#16798) (#16804) 2024-12-16 16:35:08 -05:00
github-actions[bot]
0770fff960
give more memory to tests. 1gb instead of 512mb (#16764) (#16801)
(cherry picked from commit e6e0f9f6eb)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2024-12-16 11:59:34 +00:00
github-actions[bot]
2e7b1fe6fd
bump lock file for 8.16 (#16776) 2024-12-11 15:52:45 +00:00
github-actions[bot]
c0ae02e44d
Pin date dependency to 3.3.3 (#16755) (#16779)
Resolves: #16095, #16754
(cherry picked from commit ab19769521)

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2024-12-11 13:15:23 +00:00
github-actions[bot]
1f93dc5b65
ensure inputSize state value is reset during buftok.flush (#16760) (#16771)
(cherry picked from commit e36cacedc8)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2024-12-09 11:23:42 -08:00
github-actions[bot]
36feb29597
ensure jackson overrides are available to static initializers (#16719) (#16758)
Moves the application of jackson defaults overrides into pure java, and
applies them statically _before_ the `org.logstash.ObjectMappers` has a chance
to start initializing object mappers that rely on the defaults.

We replace the runner's invocation (which was too late to be fully applied) with
a _verification_ that the configured defaults have been applied.

(cherry picked from commit 202d07cbbf)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2024-12-04 16:03:07 -08:00
github-actions[bot]
12645e9755
Pin jar-dependencies to 0.4.1 (#16747) (#16749)
Pin jar-dependencies to `0.4.1`, until https://github.com/jruby/jruby/issues/7262
is resolved.

(cherry picked from commit e3265d93e8)

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2024-12-04 10:10:03 -05:00
github-actions[bot]
eeec9e0621
bump lock file for 8.16 (#16726)
Also update license checker with new logger dependency (#16695) (#16700)

A new transative dependency on the `logger` gem has been added through sinatra 4.1.0. Update the
license checker to ensure this is accounted for.

(cherry picked from commit e0ed994ab1)

Co-authored-by: Cas Donoghue <cas.donoghue@gmail.com>

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cas Donoghue <cas.donoghue@gmail.com>
2024-11-26 15:25:31 +00:00
João Duarte
0beea5ad52
bump version to 8.16.2 (#16710) 2024-11-21 09:42:13 +00:00
github-actions[bot]
8b97c052e6
Release notes for 8.16.1 (#16691)
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2024-11-20 17:24:15 -05:00
Ry Biesemeyer
a769327be8
Revert "Bugfix for BufferedTokenizer to completely consume lines in case of lines bigger then sizeLimit (#16482) (#16580)" (#16688)
This reverts commit 2c982112ad.
2024-11-18 15:57:45 -08:00