Add LogsDB Columnar support for system tests#3725
Conversation
This introduces opt-in stack and system-test controls that apply scoped logs data stream templates for logsdb_columnar, validate feature availability, and restore prior templates on teardown. It enables integration teams to test columnar compatibility on snapshots without changing default test behavior. Closes elastic#3700
⏳ Build in-progress, with failures
Failed CI Steps |
TL;DRThe Remediation
Investigation detailsRoot CauseThis is an infrastructure failure in the Buildkite safe-log upload path, not a source-code/test failure from this PR. The job log shows the package cleanup finished successfully and then the script reached safe-log upload:
The failure occurs exactly at that upload step. Evidence
The log then shows Buildkite artifact upload succeeding, including test result XML and coverage artifacts, which further points to a post-test upload/auth issue rather than a package test assertion failure. Verification
Follow-upIf this recurs across unrelated PRs, the durable fix is likely in the Buildkite GCP auth plugin configuration or token refresh timing, not in What is this? | From workflow: PR Buildkite Detective Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not. |
|
test integrations |
|
Created or updated PR in integrations repository to test this version. Check elastic/integrations#19907 |
Normalize dotted mapping keys before comparing simulated and actual mappings so system tests do not report valid columnar mappings as undefined.
Summary
Adds opt-in LogsDB Columnar support to
elastic-packagesystem tests so integration teams can validate data streams againstlogsdb_columnarsemantics on supported snapshot stacks.Closes #3700.
Assisted-by: Cursor (gpt-5.5 for planning, gpt-5.3-codex-high for implementation)
What changed
stack.logsdb_columnar_enabled.cluster.logsdb_columnar.enabled: true-Des.columnar_index_mode_feature_flag_enabled=trueelastic-package test system --logsdb-columnar.columnar_index_modesindex.mode: logsdb_columnarvia scoped logs@customtemplates before package installlogsdb_columnaras synthetic-source-like in system test validation.Behavior and compatibility
Usage examples
1) Start stack with columnar enabled
2) Run system tests in columnar mode for a package
elastic-package -C /path/to/integrations/packages/apache \ test system -v --data-streams access --logsdb-columnar3) Setup/tests/teardown split flow in columnar mode
Validation performed
go test ./internal/stack/... ./internal/testrunner/runners/system/... ./internal/elasticsearch/... ./cmd/...make build format lint licenser gomod update9.5.0-SNAPSHOTfor directlogsdb_columnarindex creation + indexing.apache/accesssystem test with--logsdb-columnarpassing with scoped template lifecycle logs.