Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

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

Offen
#241 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
15/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Ruhig
Tech-Stack
python, sql

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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.

Vorherrschende Sprache
Python
Sterne
142
Forks
19
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
9

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus xqlsystems/xarray-sql

Alle Issues in xqlsystems/xarray-sql

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.