ClickHouse / ClickHouse/ClickBench

Playground: QuestDB version is stale

Aperta
#1,146 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Shell
Stelle
1.1k
Fork
313
Merge medio
2h 43m
PR unite (30g)
598

Descrizione

The playground's QuestDB VM runs 9.3.1, but the examples it serves come from the current repo, which needs 9.3.2+. Two entries in its own Example dropdown fail:

```
$ curl -sS -X POST 'https://clickbench-playground.clickhouse.com/api/query?system=questdb' \
--data-binary "SELECT length_bytes('abc');"
{"error":"unknown function name: length_bytes(STRING)","position":7}

$ curl -sS -X POST 'https://clickbench-playground.clickhouse.com/api/query?system=questdb' \
--data-binary 'SELECT build();'
Build Information: QuestDB 9.3.1, JDK 17.0.9, Commit Hash 5480b2d313653b591403df4c924a84ed9fcd6703
```

Q28 and Q29 use `length_bytes()`, which first shipped in [9.3.2](https://github.com/questdb/questdb/commit/667eefc340f5d0365d84075d885a8ecdc362ec28). `questdb/install` has pinned 9.3.5 since #902; the snapshot predates that merge. (Reverting the queries to `length()` isn't the fix - URL and Referer aren't ASCII, so it would shift those answers by 2.8% and 5.1%.)

Fix:

```
curl -X POST http://localhost:8000/api/admin/provision/questdb
```

## It will come back

`handle_queries` reads `queries.sql` from the repo checkout on the host, but the engine answering comes from a snapshot built when the system was first provisioned. `provision-all.sh` skips anything already snapshotted, and INSTALL.md documents re-provisioning only after **agent** or **base-image** changes. So `git pull && provision-all.sh` picks up new systems and never refreshes changed ones.

Nine systems pin an explicit version; five report live exactly what the repo pins. That's less reassuring than it looks - those five pins were last touched 2026-05-07..05-15, before provisioning, so they've had no chance to drift. QuestDB is the only one whose pin moved afterwards, and it's the one that drifted.

49 systems have had `install`/`create.sql`/`queries.sql`/`load`/`start` changes since 2026-05-20. Which of those predate their snapshot is visible to you and not to me.

I drafted a staleness check in #1145 - fingerprint each system's scripts at provision time, expose `source_stale`, let `provision-all.sh` re-kick the stale ones. Closed it since this is your infrastructure and you may want a different shape, but happy to revive.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia da questdb/install e provision-all.sh, quindi segui handle_queries e INSTALL.md per capire quando vengono creati e aggiornati gli snapshot. Riproduci localmente il comando di provisioning di QuestDB e verifica che il playground riporti la versione fissata e supporti gli esempi attuali; la forma più ampia dello stale-check resta aperta nell’issue.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
shell, sql
Ambito
databases, infrastructure
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
55/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.