Commit graph

10955 commits

Author SHA1 Message Date
mergify[bot]
9e3be9602a
setting: enforce non-nullable (restore 8.15.x behavior) (#17522) (#17527)
(cherry picked from commit 712b37e1df)

Co-authored-by: Rye Biesemeyer <yaauie@users.noreply.github.com>
2025-04-09 10:00:20 -07:00
mergify[bot]
e0d54640e3
Fix JDK matrix pipeline after configurable it split (#17461) (#17513)
PR #17219 introduced configurable split quantities for IT tests, which
resulted in broken JDK matrix pipelines (e.g. as seen via the elastic
internal link:
https://buildkite.com/elastic/logstash-linux-jdk-matrix-pipeline/builds/444

reporting the following error

```
  File "/buildkite/builds/bk-agent-prod-k8s-1743469287077752648/elastic/logstash-linux-jdk-matrix-pipeline/.buildkite/scripts/jdk-matrix-tests/generate-steps.py", line 263
    def integration_tests(self, part: int, parts: int) -> JobRetValues:
    ^^^
SyntaxError: invalid syntax
There was a problem rendering the pipeline steps.
Exiting now.
```
)

This commit fixes the above problem, which was already fixed in #17642, using a more
idiomatic way.

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

Co-authored-by: Dimitrios Liappis <dimitrios.liappis@gmail.com>
2025-04-08 17:02:59 +03:00
github-actions[bot]
5a66afa642
Release notes for 8.18.0 (#17102)
* Update release notes for 8.18.0

* Refined release notes

* Updated plugins section after Nokogiri update

* Updated release docs after backport of #17185

* Re-added plugins section for 8.18.0

* Update after backport of #17120

* Update release notes with plugin changes

* Update release notes with recent changes

* Update docs/static/releasenotes.asciidoc

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

* Removed duplicated PR description

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

* Moved JDK update section before the plugin section

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: andsel <selva.andre@gmail.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2025-04-07 16:39:24 +02:00
mergify[bot]
8cac9d088b
Remove technical preview from agent driven monitoring pages. (#17485) (#17498)
(cherry picked from commit 38e0ca171a)

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2025-04-05 13:44:58 -07:00
mergify[bot]
45d9cad2ab
Fix persistent-queues.asciidoc PQ sizing multiplication factors (#17451) (#17469)
(cherry picked from commit 81fcfdbf5c)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-04-01 14:07:30 +01:00
mergify[bot]
e72e64754b
Update releasenotes.asciidoc to warn of ES input and filter issues in 8.17.4 (#17453) (#17472)
(cherry picked from commit d59a09c3f7)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-04-01 14:07:13 +01:00
mergify[bot]
3c4270e6bc
[Backport 8.18] Fix syntax in BK CI script (#17462) (#17464)
(cherry picked from commit 422cd4e06b)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2025-04-01 13:22:12 +02:00
mergify[bot]
9f651f6cd8
Update tls-encryption.asciidoc (#17387) (#17445)
The referenced elasticsearch output plugin has deprecated the options that were specified (`ssl`, `cacert`) https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html#plugins-outputs-elasticsearch-deprecated-options

When I tried using the `ssl` option I noticed a warning in the logstash logs:
```
[WARN ][logstash.outputs.elasticsearch] You are using a deprecated config setting "ssl" set in elasticsearch. Deprecated settings will continue to work, but are scheduled for removal from logstash in the future. Set 'ssl_enabled' instead. If you have any questions about this, please visit the #logstash channel on freenode irc.
```

I have updated this document with the suggested new options to use instead.

(cherry picked from commit 3402310b40)

Co-authored-by: Matt Johnson <M@ttJohnson.com>
2025-03-31 09:13:18 -04:00
github-actions[bot]
b985a6f460
Update patch plugin versions in gemfile lock (#17450)
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
2025-03-31 12:13:39 +01:00
mergify[bot]
01ec9ee20a
[Backport 8.18] Limit memory consumption in test on overflow (#17373) (#17412)
Updates only test code to be able to run a test that consumes big memory if:
- the physical memory is bigger than the requested Java heap
- JDK version is greater than or equal to 21.

The reason to limit the JDK version is that on 16GB machine the G1GC is more efficient than the one on previous JDKs and so let complete the test with 10GB heap, while in JDK 17 it consistently fails with OOM error.

(cherry picked from commit 075fdb4152)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2025-03-31 10:11:27 +02:00
mergify[bot]
f9c1e7637a
[8.18] Pin rubocop-ast development gem due to new dep on prism (backport #17407) (#17425)
* Pin rubocop-ast development gem due to new dep on prism (#17407)

The rubocop-ast gem just introduced a new dependency on prism.
 - https://rubygems.org/gems/rubocop-ast/versions/1.43.0

In our install default gem rake task we are seeing issues trying to build native
extensions. I see that in upstream jruby they are seeing a similar problem (at
least it is the same failure mode https://github.com/jruby/jruby/pull/8415

This commit pins rubocop-ast to 1.42.0 which is the last version that did not
have an explicit prism dependency.

(cherry picked from commit 6de59f2c02)

* Bump rubocop-ast

We are pinning rubocop-ast to the last version that did not require prism.
It is a development gem and should not change any behavior of LS.

---------

Co-authored-by: Cas Donoghue <cas.donoghue@gmail.com>
2025-03-27 14:47:18 -07:00
github-actions[bot]
14c0e2db32
Update 8.17.4 release notes to warn of http_poller issue (#17436) (#17437)
(cherry picked from commit 3cde776be2)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-03-27 18:31:20 +00:00
mergify[bot]
2dff6b83c5
Replace Deprecated SSL Settings with their latest values (#17392) (#17398)
(cherry picked from commit 2a03d7e8dd)

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2025-03-27 10:06:52 -04:00
mergify[bot]
6bab23bfbf
Forward port release notes for 8.17.4 to 8.18 (#17379) (#17410)
* Update release notes for 8.17.4

* Refined Logstash 8.17.4 release notes

* Update docs/static/releasenotes.asciidoc

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

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Andrea Selva <selva.andre@gmail.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
(cherry picked from commit 26136d6529)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-03-26 11:25:07 +01:00
mergify[bot]
5ebd8df216
Forward port Release notes for 8.16.6 to 8.18 (backport #17378) (#17389)
* Release notes for 8.16.6 (#17378)

* Update release notes for 8.16.6

* Refined Logstash 8.16.6 release notes

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Andrea Selva <selva.andre@gmail.com>
(cherry picked from commit 7fe453b130)

# Conflicts:
#	docs/static/releasenotes.asciidoc

* Resolve merge conflicts in release notes

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2025-03-26 09:51:23 +01:00
mergify[bot]
abaa9379fd
tests: make integration split quantity configurable (#17219) (#17368)
* tests: make integration split quantity configurable

Refactors shared splitter bash function to take a list of files on stdin
and split into a configurable number of partitions, emitting only those from
the currently-selected partition to stdout.

Also refactors the only caller in the integration_tests launcher script to
accept an optional partition_count parameter (defaulting to `2` for backward-
compatibility), to provide the list of specs to the function's stdin, and to
output relevant information about the quantity of partition splits and which
was selected.

* ci: run integration tests in 3 parts

(cherry picked from commit 3e0f488df2)

Co-authored-by: Rye Biesemeyer <yaauie@users.noreply.github.com>
2025-03-20 05:34:53 -07:00
mergify[bot]
45fa28a3ee
[8.18] add ci shared qualified-version script (backport #17311) (#17349)
* add ci shared qualified-version script (#17311)

* ci: add shareable script for generating qualified version

* ci: use shared script to generate qualified version

(cherry picked from commit 10b5a84f84)

# Conflicts:
#	.buildkite/scripts/dra/build_docker.sh

* resolve merge conflict

---------

Co-authored-by: Rye Biesemeyer <yaauie@users.noreply.github.com>
2025-03-19 13:47:22 -07:00
mergify[bot]
02e502ae95
Added test to verify the int overflow happen (#17353) (#17355)
Use long instead of int type to keep the length of the first token.

The size limit validation requires to sum two integers, one with the length of the accumulated chars till now plus the next fragment head part. If any of the two sizes is close to the max integer it generates an overflow and could successfully fail the test 9c0e50faac/logstash-core/src/main/java/org/logstash/common/BufferedTokenizerExt.java (L123).

To fall in this case it's required that sizeLimit is bigger then 2^32 bytes (2GB) and data fragments without any line delimiter is pushed to the tokenizer with a total size close to 2^32 bytes.

(cherry picked from commit afde43f918)

Co-authored-by: Andrea Selva <selva.andre@gmail.com>
2025-03-19 17:35:17 +01:00
github-actions[bot]
d98c05f123
bump lock file for 8.18 (#17344)
* Update patch plugin versions in gemfile lock

* Rollback the lscl grammar changes caused by bump lock.

* Put back es-output criteria which was accidentally removed.

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
2025-03-18 09:15:19 -07:00
mergify[bot]
59bec6e63e
[8.18] Upgrade elasticsearch-ruby client. (backport #17161) (backport #17306) (#17340)
* [8.x] Upgrade elasticsearch-ruby client. (backport #17161) (#17306)

* Upgrade elasticsearch-ruby client. (#17161)

* Fix Faraday removed basic auth option and apply the ES client module name change.

(cherry picked from commit e748488e4a)

* Apply the required changes in elasticsearch_client.rb after upgrading the elasticsearch-ruby client to 8.x

* Swallow the exception and make non-connectable client when ES client raises connection refuses exception.

---------

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
(cherry picked from commit 7f74ce34a9)

* Update Gemfile lock after updagrading elasticsearch-ruby client.

* Update faraday to v2 in Gemfile lock.

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
2025-03-17 10:11:34 -07:00
mergify[bot]
d628ae5676
Add Deprecation tag to arcsight module (#17331) (#17334)
(cherry picked from commit d45706debe)

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2025-03-17 11:29:51 -04:00
mergify[bot]
5299488243
[8.18] Surface failures from nested rake/shell tasks (backport #17310) (#17314)
* Surface failures from nested rake/shell tasks (#17310)

Previously when rake would shell out the output would be lost. This
made debugging CI logs difficult. This commit updates the stack with
improved message surfacing on error.

(cherry picked from commit 0d931a502a)

# Conflicts:
#	rubyUtils.gradle

* Extend ruby linting tasks to handle file inputs (#16660)

This commit extends the gradle and rake tasks to pass through a list of files
for rubocop to lint. This allows more specificity and fine grained control for
linting when the consumer of the tasks only wishes to lint a select few files.

* Ensure shellwords library is loaded

Without this depending on task load order `Shellwords` may not be available.

---------

Co-authored-by: Cas Donoghue <cas.donoghue@gmail.com>
2025-03-14 11:22:59 +01:00
mergify[bot]
94cac3f0ac
Shareable function for partitioning integration tests (#17223) (#17300)
For the fedramp high work https://github.com/elastic/logstash/pull/17038/files a
use case for multiple scripts consuming the partitioning functionality emerged.
As we look to more advanced partitioning we want to ensure that the
functionality will be consumable from multiple scripts.

See https://github.com/elastic/logstash/pull/17219#issuecomment-2698650296

(cherry picked from commit d916972877)

Co-authored-by: Cas Donoghue <cas.donoghue@gmail.com>
2025-03-12 11:16:14 -07:00
mergify[bot]
befa44f865
Fix pqcheck and pqrepair on Windows (#17210) (#17262)
A recent change to pqheck, attempted to address an issue where the
pqcheck would not on Windows mahcines when located in a folder containing
a space, such as "C:\program files\elastic\logstash". While this fixed an
issue with spaces in folders, it introduced a new issue related to Java options,
and the pqcheck was still unable to run on Windows.

This PR attempts to address the issue, by removing the quotes around the Java options,
which caused the option parsing to fail, and instead removes the explicit setting of
the classpath - the use of `set CLASSPATH=` in the `:concat` function is sufficient
to set the classpath, and should also fix the spaces issue

Fixes: #17209
(cherry picked from commit ba5f21576c)

Co-authored-by: Rob Bavey <rob.bavey@elastic.co>
2025-03-07 16:13:21 -05:00
mergify[bot]
f9c6cf3beb
[CI] Health report integration tests use the new artifacts-api (#17274) (#17285)
migrate to the new artifacts-api

(cherry picked from commit feb2b92ba2)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-03-06 16:49:14 +00:00
Rob Bavey
63e8fd1d21
Forward Port of Release notes for 8.16.5 and 8.17.3 (#17187), (#17188) (#17266)
* Forward Port of Release notes for 8.17.3 (#17187)

* Update release notes for 8.17.3

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Rob Bavey <rob.bavey@elastic.co>

* Forward Port of Release notes for 8.16.5 (#17188)

* Update release notes for 8.16.5

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Rob Bavey <rob.bavey@elastic.co>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
2025-03-06 09:48:28 +01:00
mergify[bot]
bf9b23b9fa
Additional cleanify changes to ls2ls integ tests (#17246) (#17256)
* Additional cleanify changes to ls2ls integ tests: replace heartbeat-input with reload option, set queue drain to get consistent result.

(cherry picked from commit 1e06eea86e)

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2025-03-05 13:03:11 -08:00
mergify[bot]
ab11d4e80c
tests: ls2ls delay checking until events have been processed (#17167) (#17250)
* tests: ls2ls delay checking until events have been processed

* Make sure upstream sends expected number of events before checking the expectation with downstream. Remove unnecessary or duplicated logics from the spec.

* Add exception handling in `wait_for_rest_api` to make wait for LS REST API retriable.

---------

Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
(cherry picked from commit 73ffa243bf)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2025-03-05 12:08:07 -08:00
mergify[bot]
1a190a4947
gradle task migrate to the new artifacts-api (#17232) (#17239)
This commit migrates gradle task to the new artifacts-api

- remove dependency on staging artifacts
- all builds use snapshot artifacts
- resolve version from current branch, major.x, previous minor,
   with priority given in that order.

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

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-03-05 18:22:59 +00:00
kaisecheng
872ae95588
Update rack to 3.1.11 (#17230) 2025-03-05 16:41:34 +00:00
github-actions[bot]
c86a323b18
Update z_rubycheck.rake to no longer inject Xmx1g (#17212)
This allows the environment variable JRUBY_OPTS to be used for setting properties like Xmx
original pr: #16420

(cherry picked from commit f562f37df2)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-03-04 14:05:54 +00:00
github-actions[bot]
d10aeef875
Fix empty node stats pipelines (#17185) (#17202)
Fixed an issue where the `/_node/stats` API displayed empty pipeline metrics
when X-Pack monitoring was enabled

(cherry picked from commit 86785815bd)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-02-28 22:52:17 +00:00
github-actions[bot]
6c43d4584c
Update Dockerfile.erb to set eux on RUN command with semicolons (#17141) (#17200)
as per guidance https://github.com/elastic/logstash/pull/16063#discussion_r1577000627

(cherry picked from commit 18772dd25a)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-02-28 22:36:58 +00:00
github-actions[bot]
71127fa93e
Add Windows 2025 to CI (#17133) (#17146)
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:47:38 +02:00
github-actions[bot]
550f2f1a44
bump lock file for 8.18 (#17119)
* Update minor plugin versions in gemfile lock

* Restored ES output constraint

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Edmo Vamerlatti Costa <11836452+edmocosta@users.noreply.github.com>
2025-02-20 14:40:33 +01:00
github-actions[bot]
808e80adc1
spec: improve ls2ls spec (#17114) (#17117)
* spec: improve ls2ls spec

 - fixes upstream/downstream convention
   - upstream: the sending logstash (has an LS output)
   - downstream: the receiving logstash (has an LS input)
 - helper `run_logstash_instance` yields the `LogstashService` instance
   and handles the teardown.
 - pass the pipeline id and node name to the LS instances via command line
   flags to make logging easier to differentiate
 - use the generator input's sequence id to ensure that the _actual_ events
   generated are received by the downstream pipeline

* start with port-offset 100

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>

---------

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
(cherry picked from commit 9abad6609c)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2025-02-18 22:49:01 -08:00
github-actions[bot]
ee4e1323db
allow concurrent Batch deserialization (#17050) (#17106)
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:39 +00:00
github-actions[bot]
bb6c2fe468
CPM handle 404 response gracefully with user-friendly log (#17052) (#17098)
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:50:43 +00:00
github-actions[bot]
d93441914c
qa: use clean expansion of LS tarball per fixture instance (#17082) (#17095)
* qa: use clean expansion of LS tarball per fixture instance

Because QA tests can _modify_ the Logstash installation (e.g. those that
invoke the plugin manager), it is important that the service wrapper
begins with a clean expansion of the logstash tarball.

* qa: enable safe reuse of ls_home in ls_to_ls tests

(cherry picked from commit d20eb4dbcb)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2025-02-14 09:53:07 -08:00
github-actions[bot]
905e28ba19
Allow capturing heap dumps in DRA BK jobs (#17081) (#17084)
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:37:31 +02:00
github-actions[bot]
088586ca26
bump lock file for 8.18 (#17079)
* Update patch plugin versions in gemfile lock

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
Co-authored-by: Mashhur <mashhur.sattorov@elastic.co>
2025-02-13 10:46:15 -08:00
Mashhur
4bf8483ff3
Upgrade net-imap to 0.5.6 (#17078) 2025-02-12 11:31:49 -08:00
Dimitrios Liappis
9fdda26082
Fix conflicts (#17074) 2025-02-12 10:45:35 -08:00
github-actions[bot]
283afd05ae
Don't honor VERSION_QUALIFIER if set but empty (#17032) (#17069)
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:56:16 +02:00
github-actions[bot]
5379028770
inject VERSION_QUALIFIER into artifacts (#16904) (#17049) (#17064)
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:31 +00:00
Ry Biesemeyer
d7bad3d556
docs: forward-port 8.16.4 and 8.17.2 release notes to 8.18 (#17057) 2025-02-11 12:32:03 -08:00
github-actions[bot]
08439f87bb
fix logstash-keystore to accept spaces in values when added via stdin (#17039) (#17040)
This commit preserves spaces in values, ensuring that multi-word strings are stored as intended.
Prior to this change, `logstash-keystore` incorrectly handled values containing spaces,
causing only the first word to be stored.

(cherry picked from commit 5573b5ad77)

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2025-02-07 21:33:47 +00:00
github-actions[bot]
d37150e179
Backport PR #16968 to 8.18: Fix BufferedTokenizer to properly resume after a buffer full condition respecting the encoding of the input string (#16968) (#17020)
Backport PR #16968 to 8.18 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:14:09 +01:00
github-actions[bot]
7cb1968a2e
bump lock file for 8.18 (#16984)
* Update minor plugin versions in gemfile lock

* Removed version pins for Logstash plguins for 8.18 branch done with #16763

---------

Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: andsel <selva.andre@gmail.com>
2025-01-30 15:44:33 +01:00
github-actions[bot]
1b15fde1ae
upgrade jdk to 21.0.6+7 (#16932) (#16988)
(cherry picked from commit 51ab5d85d2)

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2025-01-30 11:18:32 +00:00