support new Cursor attribute that provides information on completed commands
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
Piste de recherche
Commencez par DatabricksConnectionManager.get_response() dans dbt-databricks, où l’issue identifie le message "OK" codé en dur, et examinez le curseur du connecteur ainsi que la gestion des résultats des commandes. Comparez la sortie attendue avec les balises CommandComplete de PostgreSQL et les attributs du pilote listés. Le travail est terminé lorsque les commandes exécutées exposent un attribut de curseur approprié et que get_response() indique l’opération ainsi que le nombre de lignes affectées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
similar to: https://github.com/aws/amazon-redshift-python-driver/issues/220
While a Cursor attribute providing SQL State Code is not officially a part of PEP 249: Python DB API 2.0 spec, it's a common enough convention and would greatly enhance the user experience of dbt-databricks users (👀 @benc-db)
Many database drivers provide this as a Cursor attribute, dbt was able to depend on these drivers to provide it for a ConnectionManager.get_response() method, which reports to users after successful queries the kind of operation performed (SELECT, INSERT, CREATE) and the numbers of rows affected.
However, this is not fully supported today in dbt-databrick, see DatabricksConnectionManager.get_response() where message is hardcoded as "OK" instead of returning more information.
Support for SQL state amongst popular analytics database drivers
| Driver | Cursor attribute (docs) |
|---|---|
| psycopg2 | statusmessage |
snowflake-connector-python |
sqlstate |
Ideal implementation
Follow Postgres's CommandComplete message
| Command | Tag | rows indicates the number of rows |
|---|---|---|
INSERT |
INSERT 0 rows |
inserted |
DELETE |
DELETE rows |
deleted |
UPDATE |
UPDATE rows |
updated |
MERGE |
MERGE rows |
inserted, updated, or deleted |
SELECT / CREATE TABLE AS |
SELECT rows |
retrieved |
MOVE |
MOVE rows |
ursor's position has been changed by |
FETCH |
FETCH rows |
that have been retrieved from the cursor |
COPY |
COPY rows |
copied, only in PostgreSQL 8.2 and later |
- Langage dominant
- Python
- Étoiles
- 236
- Forks
- 162
- Merge moyen
- 13 h 13 min
- PR mergées (30 j)
- 23
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de databricks/databricks-sql-python
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
databricks/databricks-sql-python#1034 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
databricks/databricks-sql-python#1012 ·
Les mainteneurs répondent en général sous 1 jour
-
Token federation: `_exchange_token` raises KeyError('access_token') on error responses, discarding the real failure reasonPeut-être pris @TangoEnSkai l’a pris il y a 82 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
databricks/databricks-sql-python#904 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
databricks/databricks-sql-python#865 ·
Les mainteneurs répondent en général sous 1 jour
-
engineer-bot
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
databricks/databricks-sql-python#860 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de databricks/databricks-sql-python
Issues similaires
-
AI bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
AUTO-MAS-Project/AUTO-MAS#1960 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
btclib-org/btclib-wallet#872 ·
Les mainteneurs répondent en général sous 1 jour
-
[Bug]: Scheduled returns scan all accepted minion keys causing extreme loadPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertebug needs-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
saltstack/salt#70789 · 1 commentaire ·
Les mainteneurs répondent en général sous 3 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 87/100
btclib-org/btclib#3093 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour