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

mysqld crash at duckdb::StandardBufferManager::EvictBlocksOrThrow with release builds

Aperta
#137 1 commento 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
45/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
cpp, mysql
Ambito
databases

Direzione di ricerca

Riproduci il crash usando un datadir nuovo, i parametri DuckDB elencati e le istruzioni per le tabelle, quindi confronta il comportamento dopo il riavvio senza quei parametri. Inizia da duckdb::StandardBufferManager::Pin in standard_buffer_manager.cpp:360 e segui il failure di EvictBlocksOrThrow; signal_handler.cc:232 è presente anch’esso nello stack. Il lavoro è completato quando il riavvio non causa più il crash e la regressione è coperta da un test appropriato.

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

Descrizione

commit: 5992bff947a5190565f1b5c4435725a968e37b5d
branch: master

#0 __pthread_kill_implementation (threadid=281473450815552, signo=6, no_tid=)
at pthread_kill.c:44
#1 handle_fatal_signal (sig=6) at signal_handler.cc:232
#2
#3 __pthread_kill_implementation (threadid=281473450815552, signo=signo@entry=6,
no_tid=no_tid@entry=0) at pthread_kill.c:44
#4 __pthread_kill_internal (signo=6, threadid=) at pthread_kill.c:78
#5 __GI_raise (sig=sig@entry=6) at raise.c:26
#6 __GI_abort () at abort.c:79
#7 __gnu_cxx::__verbose_terminate_handler() () from /lib/aarch64-linux-gnu/libstdc++.so.6
#8 ?? () from /lib/aarch64-linux-gnu/libstdc++.so.6
#9 std::terminate() () from /lib/aarch64-linux-gnu/libstdc++.so.6
#10 __cxa_throw () from /lib/aarch64-linux-gnu/libstdc++.so.6
#11 duckdb::StandardBufferManager::EvictBlocksOrThrow<char const*, std::__cxx11::basic_string<char, std::char_traits, std::allocator > > (this=this@entry=,
tag=tag@entry=duckdb::MemoryTag::BASE_TABLE, memory_delta=memory_delta@entry=262144,
buffer=buffer@entry=) at new_allocator.h:104
#12 duckdb::StandardBufferManager::Pin (this=, handle=...) at standard_buffer_manager.cpp:360

  1. Create a fresh datadir with --initialize-insecure
  2. Start the server with the following duckdb parameters
    --duckdb_mode=ON --force_innodb_to_duckdb=ON --duckdb_memory_limit=2147483648 --duckdb_threads=0
  3. Create a table

DROP TABLE IF EXISTS t1;
CREATE TABLE t1(pk INT NOT NULL AUTO_INCREMENT PRIMARY KEY, c1 VARCHAR(255));
INSERT INTO t1(c1) values("how"),("y"),(REPEAT("asda",15));

  1. Stop the server and restart without the duckdb parameters

mysqld crashes

Lingua principale
C++
Stelle
6k
Fork
902
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

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 alibaba/AliSQL

Tutte le issue di alibaba/AliSQL

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.