Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

inspect_request on a very large string is extremely slow

Aperta
#1,033 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
jupyter, python
Ambito
api, backend

Direzione di ricerca

Inizia dalla gestione di inspect_request menzionata nella issue ed esamina la chiamata collegata a signature in IPython/core/oinspect.py intorno alla riga 376. Riproduci il ritardo con una stringa molto grande, quindi traccia il motivo per cui si arriva a signature per un valore non chiamabile. Il lavoro è concluso quando inspect_request non impiega più circa 30 secondi per elaborare quel valore.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

In VS Code, we send inspect_request to get the full value of a variable for the variables view. For a really large string (e.g., 4GB) this request can take a long time, around 30s in my testing.

I don't fully follow the code, but I did some basic testing, and most of that time is spent on this call to signature, which throws https://github.com/ipython/ipython/blob/28f76f8a2f37700f8d74e91c4a54929dc367000f/IPython/core/oinspect.py#L376. Something went wrong, since the string is not callable, so it seems we shouldn't have ended up in that function anyway. I don't know whether the problem is in ipykernel or ipython.

Let me know whether you need more details.

Lingua principale
Python
Stelle
734
Fork
411
Merge medio
1g 2h
PR unite (30g)
9

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ipython/ipykernel

Tutte le issue di ipython/ipykernel

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.