Update GitLab Elasticsearch Indexer to 5.14.14

🤖 AI-authored change.

master builds an indexer without the CVE-2026-88765 ICU fix, and the open renovate MR would make it worse. The pin was 5.14.12, which predates the fix. The renovate MR moves it to 5.14.13 — a tag cut from v5.14.7, not from main.

What does this MR do and why?

Bumps GITLAB_ELASTICSEARCH_INDEXER_VERSION from 5.14.12 to 5.14.14.

Tag go directive has the ICU fix contains v5.14.12
v5.14.12 (current pin) go 1.26.0 no —
v5.14.13 (renovate's target) go 1.25.0 yes no
v5.14.14 (this MR) go 1.26.0 yes yes
  • 5.14.13 is a regression on this branch. merge_base(main, v5.14.13) is cce30fded8, the v5.14.7 release commit, so v5.14.12 is not an ancestor of it. Bumping there drops 26 commits released in v5.14.8..v5.14.12, including the Go 1.26 update and pgx 5.10.0 (itself a CVE fix).
  • v5.14.14 is the fast-forward. v5.14.12 is an ancestor of v5.14.14, and v5.14.14 carries the ported ICU fix, so this adds the fix and drops nothing.
  • Go 1.26 is not a constraint here. The Go-1.25 requirement that made 5.14.13 right for the 18.11 and 19.0 lanes belongs to those omnibus builders; master is unaffected.

The stable-branch bumps to 5.14.13 are correct and stay as they are: !255493 (merged) (18.11) and !255494 (merged) (19.0).

References

Reviewer focus: whether master should instead wait for a v5.14.15 that lands the fix through the security repo's normal path, rather than taking v5.14.14 directly. Every claim above is a merge-base fact; that one is a release-process judgement.

How to set up and validate locally

git clone https://gitlab.com/gitlab-org/gitlab-elasticsearch-indexer && cd gitlab-elasticsearch-indexer
git merge-base --is-ancestor v5.14.12 v5.14.14 && echo "fast-forward"
git merge-base --is-ancestor v5.14.12 v5.14.13 || echo "would drop commits"

🤖 Automated change — mention me to get a response. Feedback welcome. Ask to speak to John directly anytime.

Mechanism, citations and verification (for agents / deep readers)

Mechanism

One-line change to GITLAB_ELASTICSEARCH_INDEXER_VERSION: 5.14.12 -> 5.14.14. Nothing else in the diff.

Verification

Re-derived in a fresh clone of gitlab-org/gitlab-elasticsearch-indexer at origin/main c7599399:

  • merge-base(main, v5.14.13) = cce30fded840a8be1df68381c80d04e471f219fe, which git log -1 shows as Merge branch 'release_v5.14.7_...' — identical to git rev-parse v5.14.7^{commit}.
  • git merge-base --is-ancestor v5.14.12 v5.14.14 exits 0; the same test against v5.14.13 exits 1. git rev-list --count v5.14.13..v5.14.12 = 26.
  • The Go 1.26 commit 97c1f66e0b and the pgx bump 5fd5fa7ae2 are each reachable from v5.14.12 and v5.14.14, unreachable from v5.14.13.
  • third_party/icu/go.mod exists at v5.14.13 and v5.14.14, absent at v5.14.12. git diff v5.14.13 v5.14.14 -- third_party/icu/c_bridge.c third_party/icu/convert.go is empty, so the two tags ship byte-identical fixed sources — the fix commit has different SHAs on each lineage (a74eefbf vs 268c48b) because it was ported, not cherry-picked.
  • go directives read from git show <tag>:go.mod.

What I did not verify

  • No build and no test run of the indexer at v5.14.14; the fix's runtime behaviour is unverified here.
  • Whether an exception request covers CVE-2026-88765. A keyword search of the release tasks tracker found none, but a differently-titled one elsewhere would not have matched.
  • Whether release management would prefer master take this tag versus a later one — that is the Reviewer focus question and is theirs to answer.
  • That the omnibus builders for 18.11 and 19.0 ship Go 1.25; only the indexer's own go.mod directives were read.
Edited by John Mason

Merge request reports

Loading
Loading