query_graph fails with duckdb 2
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 77/100
Rechercherichtung
Beginne mit duckdb.query_graph/main.py, insbesondere mit _generate_metric_grid_html, bei dem der Traceback einen Fehler identifiziert, wenn im Profil die Latenz auf "N/A" gesetzt ist. Führe die Reproduktionsbefehle aus dem Issue mit DuckDB 2.0.0 aus und untersuche, wie das Profil-JSON verarbeitet wird. Fertig ist die Arbeit, wenn query_graph die Visualisierung für dieses Profil ohne ValueError erzeugt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
What happens?
We used to be able to run this to get a visualization of the duckdb profiling. It's still mentioned in the documentation: https://duckdb.org/docs/2.0/dev/profiling#query-graphs
But it doesn't work anymore with duckdb 2. #494 says that query_graph is broken but will be fixed before v2.0. I don't think that happened. Are there plans to fix it?
To Reproduce
First run this with duckdb 2:
SET enable_profiling='json';
SET profile_output = '/tmp/profile.json';
SELECT 1;
python -m duckdb.query_graph --profile_input /tmp/profile.json
<frozen runpy>:130: RuntimeWarning: 'duckdb.query_graph.__main__' found in sys.modules after import of package 'duckdb.query_graph', but prior to execution of 'duckdb.query_graph.__main__'; this may result in unpredictable behaviour
Traceback (most recent call last):
File "<frozen runpy>", line 203, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File ".venv/lib/python3.13/site-packages/duckdb/query_graph/__main__.py", line 672, in <module>
main()
~~~~^^
File ".venv/lib/python3.13/site-packages/duckdb/query_graph/__main__.py", line 665, in main
profiling_info.to_html(output_file=output)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File ".venv/lib/python3.13/site-packages/duckdb/query_graph/__main__.py", line 339, in to_html
html_output = self._translate_json_to_html(input_text=profiling_info_text, output_file=output_file)
File ".venv/lib/python3.13/site-packages/duckdb/query_graph/__main__.py", line 594, in _translate_json_to_html
highlight_metric_grid = self._generate_metric_grid_html(text)
File ".venv/lib/python3.13/site-packages/duckdb/query_graph/__main__.py", line 505, in _generate_metric_grid_html
"Execution Time (s)": f"{float(json_graph.get('latency', 'N/A')):.4f}",
~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: could not convert string to float: 'N/A'
OS:
mac arm
DuckDB Package Version:
2.0.0
Python Version:
2.0.0
Full Name:
Gishor Sivanrupan
Affiliation:
Exaforce
What is the latest build you tested with? If possible, we recommend testing with the latest nightly build.
I have tested with a nightly build
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?
- Yes, I have
Did you include all relevant configuration to reproduce the issue?
- Yes, I have
- Vorherrschende Sprache
- Python
- Sterne
- 203
- Forks
- 124
- Ø Merge
- 14 Std. 14 Min.
- Gemergte PRs (30 T.)
- 70
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus duckdb/duckdb-python
-
`read_json` accepts a list of paths at runtime but the type stub only allows a single path.Evtl. vergeben @aleks-drozy hat das vor 99 Tagen übernommen. Offenneeds triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
duckdb/duckdb-python#576 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Missing ROW_GROUPS_PER_FILE argument in write_parquet functionEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offenneeds triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
duckdb/duckdb-python#386 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 54/100
duckdb/duckdb-python#753 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 66/100
duckdb/duckdb-python#737 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
needs triage
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
duckdb/duckdb-python#733 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in duckdb/duckdb-python
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
bytedance/agentkit-samples#277 ·
-
ai-driven-fuzzing bug claude Minor
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 83/100
Maintainer antworten meist innerhalb von 2 Tagen
-
channels:edit check:passed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
[Bug] The blue-green mitigation strategy lists catalog names and views before the source tablesOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
aws-samples/sample-aws-genai-db-modernizer#2097 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag