Issue Summary

Hi, I’ve been trying to connect oracle datasource over Redash on docker-compose. So I looked up the link and succeeded to add Oracle datasource without error.

However, when I executing query with Oracle datasource, it’s stuck with progressing time display and never emits query result.

I tried to find the root cause with any suspicious log with docker-compose output console. but it didn’t provide useful log.

So, could anybody help me out to run the query successfully?
Thanks.

Technical details:

cx_Oracle

I installed cx_Oracle and verified without error msg.

$ pip install cx_Oracle
$ python
$ import cx_Oracle

docker-compose.producton.yml

This is my docker-compose file. I manually installed below packages and made new docker image myself. I installed libaio1, libaio-dev, and unixodbc as well.

  • oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm
  • oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
  • oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
	# This is an example configuration for Docker Compose. Make sure to atleast update
	# the cookie secret & postgres database password.
	#
	# Some other recommendations:
	# 1. To persist Postgres data, assign it a volume host location.
	# 2. Split the worker service to adhoc workers and scheduled queries workers.
	version: '2'
	services:
	  server:
	    image: lks21c/redash:4.0.1
	    # volumes:
	    #   - /home/lks21c/repo/redash/data:/app
	    command: server
	    depends_on:
	      - postgres
	      - redis
	    ports:
	      - "5000:5000"
	    environment:
	      PYTHONUNBUFFERED: 0
	      REDASH_LOG_LEVEL: "INFO"
	      REDASH_REDIS_URL: "redis://redis:6379/0"
	      REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres"
	      REDASH_COOKIE_SECRET: veryverysecret
	      REDASH_WEB_WORKERS: 4
	      REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.oracle,redash.query_runner.python
	      LD_LIBRARY_PATH: /usr/lib/oracle/12.2/client64/lib/
	      ORACLE_HOME: /usr/lib/oracle/12.2/client64
	    # restart: always
	  worker:
	    image: lks21c/redash:4.0.1
	    command: scheduler
	    environment:
	      PYTHONUNBUFFERED: 0
	      REDASH_LOG_LEVEL: "INFO"
	      REDASH_REDIS_URL: "redis://redis:6379/0"
	      REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres"
	      REDASH_ADDITIONAL_QUERY_RUNNERS: redash.query_runner.oracle,redash.query_runner.python
	      LD_LIBRARY_PATH: /usr/lib/oracle/12.2/client64/lib/
	      ORACLE_HOME: /usr/lib/oracle/12.2/client64
	      QUEUES: "queries,scheduled_queries,celery"
	      REDASH_LOG_LEVEL: INFO
	      WORKERS_COUNT: 2
	    # restart: always
	  redis:
	    image: redis:3.0-alpine
	    restart: always
	  postgres:
	    image: postgres:9.5.6-alpine
	    # volumes:
	    #   - /opt/postgres-data:/var/lib/postgresql/data
	    # restart: always
	  nginx:
	    image: redash/nginx:latest
	    ports:
	      - "8484:80"
	    depends_on:
	      - server
	    links:
	      - server:redash
	    # restart: always

I solved the issue and made docker registry.
https://github.com/lks21c/bigdata-ansible/tree/master/redash-prd