[BUG] Upgrade from 2.x: compose pins postgres:15, but existing .nostr/data may be PG 16/17/18 (old unpinned postgres image)
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 55/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- docker-compose, postgresql, typescript
Piste de recherche
Read the release notes or upgrade documentation and the compose configuration for nostream-db; the report identifies .nostr/data/PG_VERSION as the way to check the existing cluster version. Start by confirming which PostgreSQL image major and Debian variant the upgrade instructions should use. Done means the upgrade guidance explains how operators can match the image to their existing data directory.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
#393 (for #387) pinned nostream-db to postgres:15. Before that the compose file used the unpinned postgres image, so existing installs created .nostr/data with whatever major version was latest at the time — 16, 17 or 18. After upgrading such an install to 3.x, postgres:15 cannot open the data directory and the relay never starts. The bind mount ${PWD}/.nostr/data is still used, so the old data is picked up — just by the wrong major version.
To Reproduce
- Run nostream 2.x with the old compose (
image: postgres) — e.g. our.nostr/datahasPG_VERSION=17(image was 17.5). git checkout v3.4.1 && docker compose up -d.nostream-dbcannot start, because PostgreSQL refuses a data directory initialized by a newer major ("database files are incompatible with server"), andnostream-migrate/nostreamwait on its healthcheck. (We caught this before starting:.nostr/data/PG_VERSIONsaid 17 while the compose file says 15, so we did not run 15 against the data.)
Expected behavior
Upgrading from 2.x either keeps working or stops with a clear message telling the operator which image to use.
System
- OS: Ubuntu 22.04
- Platform: docker compose v5.4
- Version: 2.1.0 → 3.4.1, data dir PG 17
Workaround we use
docker-compose.override.yml next to the upstream file:
services:
nostream-db:
image: postgres:17.10-bookworm
Note the -bookworm suffix: the old postgres image was Debian 12 based, current postgres:17 is Debian 13 with a newer glibc. Our database uses the libc collation en_US.utf8, and switching glibc versions under an existing cluster can silently invalidate text indexes — so the variant should match the one that created the data.
Suggestion
- an upgrade note in the release notes / docs: check
cat .nostr/data/PG_VERSIONand override the image to that major (same Debian variant) beforedocker compose up; - optionally, the CLI start command could read
PG_VERSIONand refuse to start with a clear message when it does not match the configured image major.
- Langage dominant
- TypeScript
- Étoiles
- 829
- Forks
- 234
- Merge moyen
- 16 h 13 min
- PR mergées (30 j)
- 74
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de cameri/nostream
-
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
Les mainteneurs répondent en général sous 1 jour
-
Website
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Les mainteneurs répondent en général sous 1 jour
-
[BUG] Upgrade from 2.x: EWMA rate limiter hits WRONGTYPE on sliding-window keys left in RedisOuverte
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
Les mainteneurs répondent en général sous 1 jour
-
[BUG] LNbits >= 1.0: ISO 8601 time/expiry parsed as unix seconds, paid admissions never confirmedOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 25/100
cameri/nostream#927 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
feat(payments): let clients see their subscription tierPeut-être pris @Priyanshubhartistm l’a pris il y a 1 jour. Ouverteenhancement
cameri/nostream#925 · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de cameri/nostream
Issues similaires
-
[Bug]: Circular app layout navigation and help icons are shifted upward in the official demoOuvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
cloudscape-design/components#5184 ·
Les mainteneurs répondent en général sous 2 jours
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
JarX-Concepts/react-native-platform-components#130 ·
Les mainteneurs répondent en général sous 1 jour
-
fix(api): optimize-for-web /preview outer catches miss asDecoderOutOfMemory on V8 OOM and SIGKILLOuvertearea: backend bug priority: low
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
snapotter-hq/SnapOtter#3773 ·
Les mainteneurs répondent en général sous 1 jour
-
ai-driven-qa ux-audit
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
linagora/twake-contacts-frontend#386 ·
Les mainteneurs répondent en général sous 1 jour
-
git: README should state plainly that without --repository every reachable repository is in scopeOuvertedocumentation server-git v2
Difficulté 1/5 1-3 heures Accessibilité débutants 84/100
modelcontextprotocol/servers#5225 ·
Les mainteneurs répondent en général sous 1 jour