docker
docker copied to clipboard
citusdata/citus:8 function recover_prepared_transactions() does not exist.
The image citusdata/citus:8 seems to be broken.
Reproduce
docker-compose.yml
version: '2.1'
volumes:
citus_7: {}
citus_8: {}
services:
master8:
container_name: citus_8
image: 'citusdata/citus:8'
labels: ['com.citusdata.role=Master']
volumes:
- citus_8:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=Js7Wf0ZMlewhJzcF
- POSTGRES_USER=citus
master7:
container_name: citus_7
image: 'citusdata/citus:7'
labels: ['com.citusdata.role=Master']
volumes:
- citus_7:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=Js7Wf0ZMlewhJzcF
- POSTGRES_USER=citus
$ docker-compose up -d
# there is chance that citus_8 will failed to start
$ docker exec -it citus_7 psql -U citus -c "CREATE EXTENSION citus;"
ERROR: extension "citus" already exists
$ docker exec -it citus_8 psql -U citus -c "CREATE EXTENSION citus;"
ERROR: function recover_prepared_transactions() does not exist
When citus_8 failed to init here's the logs output:
$(docker logs citus_8)
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Success. You can now start the database server using:
pg_ctl -D /var/lib/postgresql/data -l logfile start
WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.
waiting for server to start....2019-03-13 18:17:51.118 UTC [52] LOG: number of prepared transactions has not been configured, overriding
2019-03-13 18:17:51.118 UTC [52] DETAIL: max_prepared_transactions is now set to 200
2019-03-13 18:17:51.123 UTC [52] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2019-03-13 18:17:51.183 UTC [53] LOG: database system was shut down at 2019-03-13 18:17:46 UTC
2019-03-13 18:17:51.210 UTC [52] LOG: database system is ready to accept connections
done
server started
CREATE DATABASE
/usr/local/bin/docker-entrypoint.sh: running /docker-entrypoint-initdb.d/000-configure-stats.sh
/usr/local/bin/docker-entrypoint.sh: running /docker-entrypoint-initdb.d/001-create-citus-extension.sql
BEGIN
2019-03-13 18:17:53.758 UTC [89] LOG: starting maintenance daemon on database 16384 user 10
2019-03-13 18:17:53.758 UTC [89] CONTEXT: Citus maintenance daemon for database 16384 user 10
2019-03-13 18:17:53.762 UTC [88] LOG: citus extension created on postgres without ssl enabled, turning it on during creation of the extension
2019-03-13 18:17:53.762 UTC [88] CONTEXT: SQL statement "SELECT citus_setup_ssl()"
PL/pgSQL function inline_code_block line 5 at PERFORM
2019-03-13 18:17:53.762 UTC [88] STATEMENT: CREATE EXTENSION citus;
2019-03-13 18:17:53.796 UTC [88] LOG: no certificate present, generating self signed certificate
2019-03-13 18:17:53.796 UTC [88] CONTEXT: SQL statement "SELECT citus_setup_ssl()"
PL/pgSQL function inline_code_block line 5 at PERFORM
2019-03-13 18:17:53.796 UTC [88] STATEMENT: CREATE EXTENSION citus;
2019-03-13 18:17:53.918 UTC [52] LOG: received SIGHUP, reloading configuration files
2019-03-13 18:17:53.919 UTC [52] LOG: parameter "listen_addresses" cannot be changed without restarting the server
2019-03-13 18:17:53.919 UTC [52] LOG: parameter "ssl" changed to "on"
2019-03-13 18:17:53.919 UTC [52] LOG: parameter "ssl_ciphers" changed to "TLSv1.2+HIGH:!aNULL:!eNULL"
2019-03-13 18:17:53.919 UTC [52] LOG: configuration file "/var/lib/postgresql/data/postgresql.conf" contains errors; unaffected changes were applied
2019-03-13 18:17:54.322 UTC [88] ERROR: function recover_prepared_transactions() does not exist
2019-03-13 18:17:54.322 UTC [88] STATEMENT: CREATE EXTENSION citus;
psql:/docker-entrypoint-initdb.d/001-create-citus-extension.sql:3: ERROR: function recover_prepared_transactions() does not exist