Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Chunked round-trip over DuckDB relations: intermittent deadlock in duckdb-python under thread churn

Ouverte
#241 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

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
15/100
Type d'issue
Bug
Clarté
À clarifier
Activité
Calme
Stack technique
python, sql

Piste de recherche

The relevant code is the DuckDBHandle class in xarray_sql/lazyscan.py, where supports_chunked is set to False and the engine thread topology is defined. The root cause sits upstream in duckdb-python's Arrow scan callbacks under thread churn, so reproducing it needs a concurrent test that registers an xarray-sql table and starts or stops Python threads during a chunked query. The issue does not say what a fix should look like, so confirm the intended outcome with maintainers before starting.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

DuckDBHandle.supports_chunked = False disables the lazy (chunks=) round-trip for DuckDB relations. The blocker is upstream: a DuckDB query whose source is a Python-callback Arrow scan (any table registered through xarray-sql) intermittently deadlocks inside duckdb-python/CPython when other Python threads start or stop during execution.

Current state: chunked DuckDB round-trips fail fast instead of hanging; the eager path and every other handle operation run on one dedicated engine thread (the known-safe topology) and are unaffected. See DuckDBHandle in xarray_sql/lazyscan.py.

Langage dominant
Python
Étoiles
142
Forks
19
Merge moyen
1 j 9 h
PR mergées (30 j)
9

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de xqlsystems/xarray-sql

Toutes les issues de xqlsystems/xarray-sql

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.