citusdata/docker

Create extension hll fails with citus:8.0.0

sfriquet opened this issue · 3 comments

I'm trying to build an image using citus:8.0.0 with the hll extension.

I got the following when issuing CREATE EXTENSION "hll":

[83] ERROR:  could not open extension control file "/usr/share/postgresql/11/extension/hll.control": No such file or directory
[83] STATEMENT:  CREATE EXTENSION IF NOT EXISTS "hll";
ERROR:  could not open extension control file "/usr/share/postgresql/11/extension/hll.control": No such file or directory

This used to work with citus:7.5.0.

Here's our Dockerfile:

FROM citusdata/citus:8.0.0

RUN apt-get update \
 && apt-get install -yy git make gcc postgresql-server-dev-11 \
 && git clone https://github.com/pgpartman/pg_partman /tmp/pg_partman \
 && cd /tmp/pg_partman && make install \
 && cd /tmp && rm -fr pg_partman \
 && apt-get remove --purge -yy git make gcc postgresql-server-dev-11

COPY 100-citus-setup.sh /docker-entrypoint-initdb.d/

And our 100-citus-setup.sh:

#!/bin/bash -e

psql -v ON_ERROR_STOP=1 --username "postgres" --dbname "citus" <<EOSQL
CREATE ROLE citus WITH NOSUPERUSER LOGIN IN ROLE pg_monitor;

ALTER DATABASE citus SET citus.shard_replication_factor = 1;
ALTER DATABASE citus OWNER TO citus;

[...]
CREATE EXTENSION IF NOT EXISTS "hll";
[...]
EOSQL

FWIW, topn installs fine.

Hi @sfriquet, the problem is occurring due to some missing files in our lately build hll packages. We are currently working on that. I will add comment when we fix it.

Hi @sfriquet you can use hll now. Note that, you need to remove local docker image with tag 8.0.0 first.

postgres=# create extension hll;
ERROR: could not open extension control file "/usr/share/postgresql/11/extension/hll.control": No such file or directory
how can i add extension in postgresql11. thanks in advanced