GitHub user lilotter45 added a comment to the discussion: Not able to run any 
SQL query on SQL lab

@ABDevops-test, I also have a StarRocks database connection configured and 
working. I can give you some information on the configuration I've used as a 
point of reference:

### Version

I'm running 5.0.0 and 6.0.0rc2 or maybe rc3 with these settings. I do have a 
custom build that I'm using.

StarRocks is version 3.4.4-bc987bb

### Dockerfile

This is the Dockerfile I use to build the image I'm using, minus some 
customizations and packages irrelevant to this issue. It is based on the 
[example in the 
docs](https://superset.apache.org/docs/6.0.0/installation/docker-builds).

```dockerfile
ARG SUPERSET_TAG=5.0.0
FROM apache/superset:${SUPERSET_TAG}

USER root

# Set environment variable for Playwright
ENV PLAYWRIGHT_BROWSERS_PATH=/usr/local/share/playwright-browsers

# Add build-essential to allow building python packages
RUN /app/docker/apt-install.sh build-essential default-libmysqlclient-dev 
pkg-config

# Install packages using uv into the virtual environment
RUN . .venv/bin/activate && \
    uv pip install --no-cache-dir \
    authlib \
    flask-caching \
    mysqlclient \
    pillow \
    playwright \
    psycopg2-binary \
    redis \
    starrocks==1.2.2 \
    && playwright install-deps \
    && PLAYWRIGHT_BROWSERS_PATH=/usr/local/share/playwright-browsers playwright 
install chromium

USER superset

CMD ["/app/docker/entrypoints/run-server.sh"]
```

**Python packages** I have explicitly added that are relevant to StarRocks:

- mysqlclient
- starrocks - use version 1.2.2 because 1.2.3 is broken; a fix was just 
released a couple days ago, but it isn't yet available, except when built from 
source

### StarRocks

- Is it possible that you have a permission issue for the user that you've used 
to connect? Are you able to run a `SELECT` query in other clients using the 
same credentials?
- If not, maybe you need to grant `SELECT` privileges, e.g.:

```sql
-- If you're providing permissions via roles, you might need/want to make sure 
they're applied at login, or you can set the default role, as I've done below.
SET GLOBAL activalte_all_roles_on_login = TRUE;

CREATE DATABASE example_db;

SET CATALOG default_catalog;

CREATE ROLE IF NOT EXISTS reader;

GRANT SELECT ON ALL TABLES IN DATABASE example_db TO ROLE reader;

CREATE USER test_user IDENTIFIED BY 'some-password' DEFAULT ROLE reader;
```


GitHub link: 
https://github.com/apache/superset/discussions/36710#discussioncomment-15281610

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: 
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to