debcrafters-packages team mailing list archive
-
debcrafters-packages team
-
Mailing list archive
-
Message #02672
[Bug 2087772] Re: crash (segfault) in libsqlite3 running multi-join query
Thanks Simon. I should mention I was testing the version of SQLAlchemy
2.0.38+ds1. It's possible it has a newer test that exercises the failing
part of SQLite3. This testing is for a backport to the Ubuntu Cloud
Archive for the latest version of OpenStack. I did some manual `git
bisect` between SQLite3-3.45.2 and 3.45.3 and I believe the first "good"
git commit is 74851f66811854c772a9b2d0a13f1e9e82b69c25. Before that
commit running:
python -m pytest -q \
~/sqlalchemy-2.0.38+ds1/test/orm/inheritance/test_assorted_poly.py::\
MultiOfTypeContainsEagerTest_joined::test_big_query \
--db default
produces the segfault. This commit appears to contain the fix. For
reference, the reason I'm doing this testing is to solve this build
failure for SQLAlchemy backport: https://launchpad.net/~ubuntu-cloud-
archive/+archive/ubuntu/flamingo-staging/+build/30923593
Also please let me know if what I'm describing should be a new bug
report. It felt similar to the initial submission though I'm not
positive it's the same segfault.
--
You received this bug notification because you are a member of
Debcrafters packages, which is subscribed to sqlite3 in Ubuntu.
https://bugs.launchpad.net/bugs/2087772
Title:
crash (segfault) in libsqlite3 running multi-join query
Status in sqlite3 package in Ubuntu:
Incomplete
Bug description:
Ubuntu version:
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Package version:
libsqlite3-0:
Installed: 3.45.1-1ubuntu2
Candidate: 3.45.1-1ubuntu2
Version table:
*** 3.45.1-1ubuntu2 500
500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
100 /var/lib/dpkg/status
libsqlite3 segfaults on running a particular query (which has not
caused a problem in previous releases of SQLite). It appears to be
related to having multiple "JOIN" statements in the query since
removing one of them does not show the problem but could equally be
something else it doesn't like about this particular query.
Steps to reproduce:
1. Create the database (using attached schema):
sqlite3 audio.db < sql-audio280.txt
2. Run query as follows:
sqlite3 audio.db "SELECT Song.SongTitle, Song.Duration, Song.CueStart,
Song.CueEnd,Song.NormaliseRLeft, Song.NormaliseRRight,
Song.FileDirectory, Song.FileName, Song.SongID,Artist.ArtistID,
Artist.ArtistName, Genre.GenreID, Genre.Genre, Album.AlbumID,
Album.AlbumTitle,Song.Year, Song.Notes, Song.Highlight,
Song.Highlight2, Song.ReplayGain, Song.ReplayGainSet FROM(Album INNER
JOIN(Artist INNER JOIN(Genre INNER JOIN Song ON Genre.GenreID =
Song.GenreID) ON Artist.ArtistID = Song.ArtistID) ON Album.AlbumID =
Song.AlbumID);"
Result is consistently a segfault. Backtrace from gdb:
Program received signal SIGSEGV, Segmentation fault.
__strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:76
warning: 76 ../sysdeps/x86_64/multiarch/strlen-avx2.S: No such file or directory
(gdb) bt
#0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:76
#1 0x00007f0bc38c26e4 in sqlite3DbStrDup () from /lib/x86_64-linux-gnu/libsqlite3.so.0
#2 0x00007f0bc38f2ef4 in ?? () from /lib/x86_64-linux-gnu/libsqlite3.so.0
#3 0x00007f0bc391c1be in sqlite3WalkSelect () from /lib/x86_64-linux-gnu/libsqlite3.so.0
#4 0x00007f0bc38f1e6d in ?? () from /lib/x86_64-linux-gnu/libsqlite3.so.0
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/sqlite3/+bug/2087772/+subscriptions