Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 07/09/2020 15:27:48
- etelhci
- Membre
Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Bonjour.
Je suis en train d'installer postgreSQL 11.9 sur Mac OS X à partir des sources.
J'en suis à l'étape make check qui semble ne pas avoir abouti.
Mais il n'affiche pas beaucoup d'informations sur ce qui n'a pas marché.
J'ai mis l'affichage et le contenu des fichiers.
Par avance merci.
Cordialement.
----------------------------->postgresql-11.9/src/test/regress/log/postmaster.log
2020-09-07 15:09:26.942 CEST [11235] LOG: listening on Unix socket "/tmp/pg_regress-OaEkvv/.s.PGSQL.60857"
2020-09-07 15:09:26.950 CEST [11238] LOG: database system was shut down at 2020-09-07 15:09:26 CEST
2020-09-07 15:09:26.950 CEST [11239] [unknown] FATAL: the database system is starting up
2020-09-07 15:09:26.952 CEST [11235] LOG: database system is ready to accept connections
----------------------------->Sortie make check :
/Library/Developer/CommandLineTools/usr/bin/make -C ./src/backend generated-headers
/Library/Developer/CommandLineTools/usr/bin/make -C catalog distprep generated-header-symlinks
make[2]: Nothing to be done for `distprep'.
make[2]: Nothing to be done for `generated-header-symlinks'.
/Library/Developer/CommandLineTools/usr/bin/make -C utils distprep generated-header-symlinks
make[2]: Nothing to be done for `distprep'.
make[2]: Nothing to be done for `generated-header-symlinks'.
rm -rf '<...>/postgresql-11.9'/tmp_install
/bin/sh ./config/install-sh -c -d '<...>//postgresql-11.9'/tmp_install/log
/Library/Developer/CommandLineTools/usr/bin/make -C '.' DESTDIR='<...>/postgresql-11.9'/tmp_install install >'<...>/postgresql-11.9'/tmp_install/log/install.log 2>&1
/Library/Developer/CommandLineTools/usr/bin/make -j1 -C src/test/regress checkprep >>'<...>/postgresql-11.9'/tmp_install/log/install.log 2>&1
/Library/Developer/CommandLineTools/usr/bin/make -C src/test/regress check
/Library/Developer/CommandLineTools/usr/bin/make -C ../../../src/port all
make[2]: Nothing to be done for `all'.
/Library/Developer/CommandLineTools/usr/bin/make -C ../../../src/common all
make[2]: Nothing to be done for `all'.
/Library/Developer/CommandLineTools/usr/bin/make -C ../../../contrib/spi
make[2]: Nothing to be done for `all'.
rm -rf ./testtablespace
mkdir ./testtablespace
PATH="<...>/postgresql-11.9/tmp_install/usr/local/pgsql/bin:$PATH" DYLD_LIBRARY_PATH="<...>/postgresql-11.9/tmp_install/usr/local/pgsql/lib" ../../../src/test/regress/pg_regress --temp-instance=./tmp_check --inputdir=. --bindir= --dlpath=. --max-concurrent-tests=20 --schedule=./parallel_schedule
============== creating temporary instance ==============
============== initializing database system ==============
============== starting postmaster ==============
sh: line 1: 11247 Abort trap: 6 "psql" -X postgres < /dev/null 2> /dev/null
<... d'autres lignes du même genre>
sh: line 1: 11425 Abort trap: 6 "psql" -X postgres < /dev/null 2> /dev/null
pg_regress: postmaster did not respond within 60 seconds
Examine <...>/postgresql-11.9/src/test/regress/log/postmaster.log for the reason
make[1]: *** [check] Error 2
make: *** [check] Error 2
------------------------------
Hors ligne
#2 07/09/2020 16:03:46
- rjuju
- Administrateur
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Et donc que dit le postmaster.log?
Julien.
https://rjuju.github.io/
Hors ligne
#3 08/09/2020 09:48:57
- etelhci
- Membre
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Bonjour.
C'est indiqué juste avant le log de make :
----------------------------->postgresql-11.9/src/test/regress/log/postmaster.log
2020-09-07 15:09:26.942 CEST [11235] LOG: listening on Unix socket "/tmp/pg_regress-OaEkvv/.s.PGSQL.60857"
2020-09-07 15:09:26.950 CEST [11238] LOG: database system was shut down at 2020-09-07 15:09:26 CEST
2020-09-07 15:09:26.950 CEST [11239] [unknown] FATAL: the database system is starting up
2020-09-07 15:09:26.952 CEST [11235] LOG: database system is ready to accept connections
Cordialement.
Hors ligne
#4 08/09/2020 11:40:52
- rjuju
- Administrateur
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Les logs n'indiquent de l'activité que pour quelques millisecondes alors que le log principal indique des problèmes pendant une minute. Avez-vous vérifié que le binaire psql compilé fonctionnait correctement, ou est-ce qu'il finit en SIGART comme semble l'indiquer le log?
Julien.
https://rjuju.github.io/
Hors ligne
#5 08/09/2020 13:28:57
- etelhci
- Membre
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Si j'ai bien compris, make check crée un serveur temporaire le temps de son exécution pour tester la compilation des sources (donc après make world).
C'est l'étape "3 Regression Tests" de la procédure que j'ai suivi : "16.4. Installation Procedure".
https://www.postgresql.org/docs/11/inst … edure.html
Mais je n'ai aucun détail sur ce que make check fait concrètement.
Et le chapitre https://www.postgresql.org/docs/11/regress.html ne parle pas de ce genre d'erreur.
Cordialement.
Hors ligne
#6 08/09/2020 14:13:26
- rjuju
- Administrateur
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Tout à fait, make check créé un serveur temporaire pour lancer les tests. Je ne pense pas que cela soit documenté en détail, et le meilleur moyen de voir ce qu'il fait est de suivre les différents makefile, notamment dans src/test/regress/.
J'imagine que dans votre cas le problème vient de
line 1: 11247 Abort trap: 6 "psql" -X postgres < /dev/null 2> /dev/null
d'où ma précédente question.
Julien.
https://rjuju.github.io/
Hors ligne
#7 18/09/2020 14:39:31
- etelhci
- Membre
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Bonjour.
Désolé, pour diverses raisons je n'ai malheureusement pas pu reprendre le sujet.
Merci pour la réponse. Malheureusement je ne pourrais l'exploiter.
Soit dit en passant, je ne m'attendais pas à devoir creuser dans le code lui-même. Je n'en ai ni vraiment les compétences, ni vraiment le temps. Est-ce une nécessité pour travailler avec PostgreSQL ?
Il me reste aussi une question que j'ai gardée en mémoire :
Il me semble que pour pouvoir tester psql, il faut un serveur ?
Hors celui du make check ne me semble avoir été créé ou a été supprimé avant qu'il rende la main.
Cette étape se situant avant l'installation du serveur je n'ai donc aucun serveur pour tester psql.
Par avance merci.
Cordialement.
Hors ligne
#8 18/09/2020 14:47:25
- rjuju
- Administrateur
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Soit dit en passant, je ne m'attendais pas à devoir creuser dans le code lui-même. Je n'en ai ni vraiment les compétences, ni vraiment le temps. Est-ce une nécessité pour travailler avec PostgreSQL ?
Non, en partant du principe que vous l'installez via des paquets. À partir du moment ou vous souhaitez compiler le projet, il faut maitriser son environnement, s'assurer d'utiliser les bonnes options de compilations etc, et il y a beaucoup moins de documentation pour ce mode vu qu'il s'adresse principalement à des développeurs.
Il me semble que pour pouvoir tester psql, il faut un serveur ?
Tout à fait. Postgres est un logiciel client / server. psql étant le client, il vous faut obligatoirement un server.
Hors celui du make check ne me semble avoir été créé ou a été supprimé avant qu'il rende la main.
Normal, il s'agit d'un serveur temporaire qui ne doit pas survivre après la fin des tests.
Cette étape se situant avant l'installation du serveur je n'ai donc aucun serveur pour tester psql.
Vous pouvez déjà tester que psql peut s'executer normalement, et vous assurer de recevoir une erreur en cas de connexion échouée plutôt qu'un SIGART. Sinon, le make check s'effectuant après la compilation, rien ne vous empêche de lancer initdb pour initialiser l'instance, puis la démarrer, puis vous connecter.
Julien.
https://rjuju.github.io/
Hors ligne
#9 18/09/2020 14:50:28
- etelhci
- Membre
Re : Mac OS X Postgres 11.9 instal à partir des sources : échec make check
Merci pour vos réponses très instructives.
Cordialement.
Hors ligne