[ISSUE] fatal error: found pointer to free object
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia tracciando le esecuzioni concorrenti di Databricks PUT e il percorso dell’errore di rate-limit descritto nell’issue, quindi esamina il riferimento Go runtime reportZombies in mgcsweep.go per trovare indizi sull’oggetto liberato. Una correzione completa dovrebbe impedire che un upload non riuscito causi errori fatali di puntatore in altre goroutine, ma l’issue non fornisce né un test riproducibile né un file sorgente da eseguire.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
Our program is uploading parquet files to stages on different goroutines. Each goroutine is uploading to a different unity volume via PUT '{{.LocalFilePath}}' INTO '{{.UnityVolumePath}}' OVERWRITE; When one goroutine fails with a rate limit error, we non deterministically encounter a panic (and therefore crash of the program) from other concurrent goroutines with message fatal error: found pointer to free object. This panic was raised by the go runtime reportZombies function. Sometimes the error is also runtime: marked free object in span 0x7e6b8843ecd8, elemsize=48 freeindex=0 (bad use of unsafe.Pointer? try -d=checkptr). These errors are non deterministic as far as we can tell.
The stack trace confirms that goroutines running when the panic occurs are all Databricks PUT executions. All the other goroutines in the program are sleeping on channels and mutexes. We are also not running enough goroutines to trigger a rate limit on the bucket or Databricks. We're running on the order of 10 to 20 goroutines worth of uploads. The rate limit seems to be due to other traffic on the same bucket, unrelated to our program.
Reproduction
This is hard to outline with test code as its pretty coupled to a lot of other business logic we have and requires the underlying bucket of the unity volume to raise a rate limit.
Expected behavior
Expected behavior is that the other goroutines should succesfully upload their files regardless of the rate limit error on one of the other goroutines.
Is it a regression?
The code running on this deployment hasn't changed in a few months, including dependencies. So it is unlikely to be a regression.
Debug Logs
Here is the original error we got about the rate limit
staging operation over HTTP was unsuccessful: 503-<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>ServerBusy</Code><Message>Operations per second is over the account limit.\nRequestId:[redacted]\nTime:2025-06-04T19:37:48.5111742Z</Message></Error>","time":"2025-06-04T19:37:48Z","message":"databricks: failed to execute query: query \n\tPUT '/tmp/1913351475.parquet' INTO '/Volumes/finance/[redacted]/invoice_pbrszrkigdtsnob_0_temp/1913351475.parquet' OVERWRITE
it appears to be a rate limit passed through by the underlying Azure storage account backing the unity volume.
Other Information
- OS: Debian (Bullseye)
- Versions:
- go 1.23.6
github.com/databricks/databricks-sql-go v1.6.1github.com/databricks/databricks-sdk-go v0.54.0
- Lingua principale
- Go
- Stelle
- 53
- Fork
- 67
- Merge medio
- 1g 2h
- PR unite (30g)
- 8
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di databricks/databricks-sql-go
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
databricks/databricks-sql-go#494 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 64/100
databricks/databricks-sql-go#490 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
databricks/databricks-sql-go#481 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
databricks/databricks-sql-go#480 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
databricks/databricks-sql-go#475 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di databricks/databricks-sql-go
Issue simili
-
Add SolentaAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
slavakurilyak/awesome-ai-agents#760 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
agent-review-finding bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
jordansmall/spindrift#5281 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
compiler-explorer/compiler-explorer#9272 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
github/github-mcp-server#3489 ·
I maintainer di solito rispondono entro 4 giorni