duckdb / duckdb/duckdb-python

duckdb Python Extension Analysis Report

オープン
#408 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
needs triage
主要言語
Python
スター
187
フォーク
112
平均マージ
13時間 29分
マージ済み PR(30日)
17

説明

### What happens?

I ran [cext-review-toolkit](https://github.com/devdanzin/cext-review-toolkit) on duckdb-python and got a report with some issues:

> The primary risks are: (1) **Python API calls without GIL in the parallel numpy scan path** (data corruption/crash), (2) **`PyTuple_Pack` reference leak** in `map.cpp` (~11 KB/call), (3) **unchecked `PyNumber_Rshift` NULL** in 128-bit integer conversion (segfault), (4) **`PyErr_PrintEx` clobbering exceptions** in map and filesystem, and (5) **UDF exception handling** that optionally swallows `MemoryError`/`KeyboardInterrupt`.

The full report is available at https://gist.github.com/devdanzin/5c7600153c8e76afee3ef1a2d516ad70

### To Reproduce

Some reproducers are available in the [Reproducers Appencix](https://gist.github.com/devdanzin/5c7600153c8e76afee3ef1a2d516ad70#duckdb-python-extension--reproducer-appendix).

### OS:

Linux x86_64

### DuckDB Package Version:

1.5.1

### Python Version:

3.14.3+ debug build

### Full Name:

Daniel Silva Diniz

### Affiliation:

None

### What is the latest build you tested with? If possible, we recommend testing with the latest nightly build.

I have tested with a stable release

### Did you include all relevant data sets for reproducing the issue?

Not applicable - the reproduction does not require a data set

### Did you include all code required to reproduce the issue?

- [x] Yes, I have

### Did you include all relevant configuration to reproduce the issue?

- [x] Yes, I have

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

リンクされている完全なレポートとその Reproducers Appendix から始め、続いて map.cpp、ファイルシステム、並列 numpy スキャン、128 ビット整数変換、UDF 例外の、名前が挙げられたパスを調査してください。完了条件は、列挙された各 reproducer が報告されたクラッシュ、リーク、未チェックのエラー、例外の上書き、または例外の握りつぶしを引き起こさなくなり、影響を受けるケースに対するリグレッションカバレッジがあることです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
numpy, python
領域
backend
issue の種類
バグ
難易度
5/5
見積もり時間
1週間以上
活発さ
静か
明瞭さ
説明が足りない
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。