databrickslabs / lsql

Lightweight SQL execution wrapper only on top of Databricks SDK
https://pypi.org/project/databricks-labs-lsql/
Other
8 stars 3 forks source link

Release v0.3.1 #87

Closed nfx closed 5 months ago

nfx commented 5 months ago

Dependency updates:

github-actions[bot] commented 5 months ago

This PR breaks backwards compatibility for databrickslabs/ucx downstream. See build logs for more details.

Running from downstreams #19

github-actions[bot] commented 5 months ago

❌ 17/18 passed, 1 failed, 2 skipped, 10m49s total

❌ test_overwrite: databricks.sdk.errors.platform.BadRequest: [INSUFFICIENT_PERMISSIONS] Insufficient privileges: (692ms) ``` databricks.sdk.errors.platform.BadRequest: [INSUFFICIENT_PERMISSIONS] Insufficient privileges: User does not have permission CREATE,USAGE on database `default`. 16:06 DEBUG [databricks.sdk] Loaded from environment 16:06 DEBUG [databricks.sdk] Ignoring pat auth, because metadata-service is preferred 16:06 DEBUG [databricks.sdk] Ignoring basic auth, because metadata-service is preferred 16:06 DEBUG [databricks.sdk] Attempting to configure auth: metadata-service 16:06 INFO [databricks.sdk] Using Databricks Metadata Service authentication [gw8] linux -- Python 3.10.14 /home/runner/work/lsql/lsql/.venv/bin/python 16:06 DEBUG [databricks.sdk] Loaded from environment 16:06 DEBUG [databricks.sdk] Ignoring pat auth, because metadata-service is preferred 16:06 DEBUG [databricks.sdk] Ignoring basic auth, because metadata-service is preferred 16:06 DEBUG [databricks.sdk] Attempting to configure auth: metadata-service 16:06 INFO [databricks.sdk] Using Databricks Metadata Service authentication 16:06 DEBUG [databricks.labs.lsql.backends] [api][execute] CREATE TABLE IF NOT EXISTS hive_metastore.default.foo (first STRING NOT NULL, second BOOLEAN NOT... (18 more bytes) 16:06 DEBUG [databricks.labs.lsql.core] Executing SQL statement: CREATE TABLE IF NOT EXISTS hive_metastore.default.foo (first STRING NOT NULL, second BOOLEAN NOT NULL) USING DELTA 16:06 DEBUG [databricks.sdk] POST /api/2.0/sql/statements/ > { > "format": "JSON_ARRAY", > "statement": "CREATE TABLE IF NOT EXISTS hive_metastore.default.foo (first STRING NOT NULL, second BOOLEAN NOT... (18 more bytes)", > "warehouse_id": "TEST_DEFAULT_WAREHOUSE_ID" > } < 200 OK < { < "statement_id": "01eef10b-016f-1931-9a1e-8029529a2db2", < "status": { < "error": { < "error_code": "BAD_REQUEST", < "message": "[INSUFFICIENT_PERMISSIONS] Insufficient privileges:\nUser does not have permission CREATE,USAGE o... (21 more bytes)" < }, < "state": "FAILED" < } < } 16:06 DEBUG [databricks.sdk] Loaded from environment 16:06 DEBUG [databricks.sdk] Ignoring pat auth, because metadata-service is preferred 16:06 DEBUG [databricks.sdk] Ignoring basic auth, because metadata-service is preferred 16:06 DEBUG [databricks.sdk] Attempting to configure auth: metadata-service 16:06 INFO [databricks.sdk] Using Databricks Metadata Service authentication 16:06 DEBUG [databricks.labs.lsql.backends] [api][execute] CREATE TABLE IF NOT EXISTS hive_metastore.default.foo (first STRING NOT NULL, second BOOLEAN NOT... (18 more bytes) 16:06 DEBUG [databricks.labs.lsql.core] Executing SQL statement: CREATE TABLE IF NOT EXISTS hive_metastore.default.foo (first STRING NOT NULL, second BOOLEAN NOT NULL) USING DELTA 16:06 DEBUG [databricks.sdk] POST /api/2.0/sql/statements/ > { > "format": "JSON_ARRAY", > "statement": "CREATE TABLE IF NOT EXISTS hive_metastore.default.foo (first STRING NOT NULL, second BOOLEAN NOT... (18 more bytes)", > "warehouse_id": "TEST_DEFAULT_WAREHOUSE_ID" > } < 200 OK < { < "statement_id": "01eef10b-016f-1931-9a1e-8029529a2db2", < "status": { < "error": { < "error_code": "BAD_REQUEST", < "message": "[INSUFFICIENT_PERMISSIONS] Insufficient privileges:\nUser does not have permission CREATE,USAGE o... (21 more bytes)" < }, < "state": "FAILED" < } < } [gw8] linux -- Python 3.10.14 /home/runner/work/lsql/lsql/.venv/bin/python ```

Running from acceptance #59

nfx commented 5 months ago

We can live with this single integration test failing, UCX bc-compat is caused by PySDK release, UCX is protected by a concrete dependency on SDK, and LSQL dependency on SDK is loose.