Skip to content

Pin the MEOS source to a committed MobilityDB commit - #241

Merged
estebanzimanyi merged 1 commit into
MobilityDB:mainfrom
estebanzimanyi:tooling/pin-meos-ref-for-ccache
Jul 31, 2026
Merged

Pin the MEOS source to a committed MobilityDB commit#241
estebanzimanyi merged 1 commit into
MobilityDB:mainfrom
estebanzimanyi:tooling/pin-meos-ref-for-ccache

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

Speeds up CI and stops the generated-surface drift by building MEOS from a fixed commit SHA instead of resolving master tip at configure time.

Why it speeds up builds: the extension pipeline caches ccache (keyed on source content). A moving master ref changes the libmeos source on every push, so libmeos and its heavy deps recompile from scratch each run. A pinned ref keeps the source identical, so ccache reuses the libmeos objects and each build after the first collapses to a link — cutting the per-PR Linux build from ~15–20 min toward ~5–8 min.

Why it stops the drift cascade: the committed generated UDF surface already comes from this same commit, so libmeos and the surface that links against it stay matched — no more per-merge regen/rebase churn as master moves.

The pin is set to the SHA the current committed surface is generated from, so this changes nothing about what libmeos is built (guaranteed compatible) — it only makes the source stable. Advancing the tracked MobilityDB version is a deliberate bump of this SHA together with a surface regeneration, which the daily surface-refresh workflow can drive.

The MEOS vcpkg port builds MobilityDB from a fixed commit SHA instead of
resolving master's tip at configure time. A moving ref changes the libmeos
source on every push, which defeats the extension pipeline's ccache (it keys
on source content): libmeos and its dependencies recompile from scratch every
CI run. A pinned ref keeps the source stable, so ccache reuses the libmeos
objects and each build after the first collapses to a link — cutting the
per-PR build from tens of minutes.

The committed generated UDF surface already comes from this same commit, so
libmeos and the surface that links against it stay matched. Advancing the
tracked MobilityDB version is a deliberate bump of this SHA together with a
surface regeneration from it, which the daily surface-refresh workflow can
drive.
@estebanzimanyi
estebanzimanyi merged commit 31677e8 into MobilityDB:main Jul 31, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant