Asking the one-liner installer for a version
curl https://clickhouse.com/ | sh always fetches the newest master build. I asked for a way to pin a version; the answer turned out to be a different tool.
Source: github.com
curl https://clickhouse.com/ | sh downloads the current master build, not a release. Run it twice a month apart and you get two different servers; I once built a cluster whose hosts were installed on different days and ran different builds, and it took days to find out why. I asked for versioned paths such as curl https://clickhouse.com/25.3.1 | sh, and later sketched a table: /stable, /stable/25.4, /lts/..., /nightly.
The thread was short. A maintainer (Algunenano) noted that release tarballs on packages.clickhouse.com already contain the all-in-one binary, another cross-linked a Slack discussion, and then it went quiet. The issue is open, labelled feature, comp-documentation and external, and the bare URL still serves master.
What changed is the tooling: the script now also installs clickhousectl (alias chctl), the official CLI, which does the version management I wanted. Per its README:
clickhousectl local install 26.8 # latest 26.8.x.x
clickhousectl local install 26.8.1.1760 # exact version
clickhousectl local use lts # latest LTS channel
clickhousectl local list --remote # what can be downloaded
The literal curl .../25.3.1 | sh form still does not exist, so the status is superseded, not implemented. For reproducibility, record the exact version (SELECT version(); mine reports 26.4.1.834) and install through clickhousectl or a release tarball, never the bare one-liner. The compatibility setting helps when comparing behavior, but does not replace running the old binary.
Discussion
Comments live in GitHub Discussions. Sign in with GitHub to join in.