Closed manisandro closed 4 months ago
Thanks for the bug report @manisandro. :smile:
@manisandro As a note, that Bugzilla report isn't public. Going to that url gives:
You are not authorized to access bug #1919573.
... even when logged in using a (non-Red-Hat) Bugzilla account.
Indeed, I've made it public
Thanks @manisandro. :smile:
This seems to be the problem:
8 0x000055555566e8b7 in operator() (__closure=0x555556873b60, ok=
, status_message=..., from_position=0, to_position=-10704) at /usr/src/debug/sqlitebrowser-3.12.1-2.fc34.x86_64/src/MainWindow.cpp:1156
It should be around 158 instead of -10704. Unfortunately I can't reproduce this here. @manisandro Could you assist us by building a custom build with extra debug information? Hopefully that would provide us with enough information to fix this issue properly. If that's not feasible, I think we can work around this issue to some extent but it might break the query logger then.
I'm happy to assist by build custom builds, just let me know what you need.
Same here. I'm on Kubuntu 20.04, building latest sqlitebrowser release with the latest sqlite release:
# https://github.com/sqlitebrowser/sqlitebrowser/releases
SQLITEBROWSER_VERSION=`curl -Ls -o /dev/null -w %{url_effective} https://github.com/sqlitebrowser/sqlitebrowser/releases/latest | sed -E 's!.+/tag/!!'`
wget -O sqlitebrowser-latest.zip https://github.com/sqlitebrowser/sqlitebrowser/archive/${SQLITEBROWSER_VERSION}.zip
unzip sqlitebrowser-latest.zip
rm sqlitebrowser-latest.zip
mv sqlitebrowser* sqlitebrowser-latest
cd sqlitebrowser-latest
perl -pe "s|endif\(EXTRAPATH\)|endif(EXTRAPATH)
# add extra library path for custom sqlite build on Linux:
set(EXTRAPATH MATCHES \"Linux\")
if(EXTRAPATH)
find_library(LIBSQLITE \\\${LIBSQLITE_NAME} HINTS `echo ${PWD} | sed -e 's!sqlitebrowser-latest!build!'`/.libs)
set(ADDITIONAL_INCLUDE_PATHS `echo ${PWD} | sed -e 's!sqlitebrowser-latest!build!'`)
endif(EXTRAPATH)
|" -i CMakeLists.txt
mkdir build
cd build
# cmake -DFORCE_INTERNAL_QSCINTILLA=ON -Dsqlcipher=0 -Wno-dev ..
cmake -Dsqlcipher=0 -Wno-dev ..
make
cp sqlitebrowser ../../build/
cd -
cd ..
This is fixed with https://github.com/sqlitebrowser/sqlitebrowser/commit/367665e7f51073dbfa3c9c0c6700c0d761af3389 But is not backported to 3.12.x
EDIT:
*conn = connect(model, &SqliteTableModel::finishedFetch,...)
is not disconnected, and query_logger(true, ..., from_position, to_position);
is called multiple times with old values for from_position and to_position, then in query_logger we have out of range exception
https://github.com/sqlitebrowser/sqlitebrowser/blob/v3.12.x/src/MainWindow.cpp#L1221 https://github.com/sqlitebrowser/sqlitebrowser/blob/v3.12.x/src/MainWindow.cpp#L1156
We're probably overdue to making a 3.13.0 release anyway. :wink:
We're probably overdue to making a 3.13.0 release anyway. wink
:+1: But let's try to get rid of qmake before, so distributors are forced to use cmake just like we do. I guess most of them already are but I'd like to avoid getting bug reports on qmake after removing it :smile:
Is there a workaround for this issue until the 3.13.0 release?
On Ubuntu 20.10. This happens about every 60 seconds while using the application. It used to be stable though. Is there a known earlier version I can downgrade to?
Works in Kubuntu 20.04 with the latest continuous build:
wget -O sqlitebrowser-continuous.zip https://github.com/sqlitebrowser/sqlitebrowser/archive/refs/tags/continuous.zip
unzip sqlitebrowser-continuous.zip
rm sqlitebrowser-continuous.zip
mv sqlitebrowser* sqlitebrowser-continuous
cd sqlitebrowser-continuous
mkdir build
cd build
cmake -Dsqlcipher=0 -Wno-dev ..
make
./sqlitebrowser &
cd -
cd ..
It is still crashing in version 3.12.2 with the same error
As mentioned above, this is only fixed in the nightlies and not yet available inside the release.
I still encountered a version of this bug in 3.12.1
console output:
Assertion [cpMax <= pdoc->Length()] failed at ../src/Editor.cpp 6096
followed by SIGABORT
$ sqlitebrowser --version
DB Browser for SQLite Version 3.12.1
Built for x86_64-little_endian-lp64, running on x86_64
Qt Version 5.15.1
SQLite Version 3.33.0.
@michaelsteuer Are you ok to try the latest development snapshot from here?
https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous
The problem should be fixed in that. :smile:
Reported downstream at https://bugzilla.redhat.com/show_bug.cgi?id=1919573, reproduced with
sqlitebrowser-3.12.1-2.fc34.x86_64
andqscintilla-qt5-2.11.5-2.fc34.x86_64
:Open 2020k_demot.db: 2020k_demot.db.zip
Execute this query:
SELECT tp.tp_id, tp.sijainti FROM tarkistuspiste tp WHERE 5 <= (SELECT COUNT(asiakas_id) FROM tarkistus t WHERE tp.tp_id = t.tp_id GROUP BY tp_id, asiakas_id);
Execute this query (same as in the step 2. except for the the missing semicolon):
SELECT tp.tp_id, tp.sijainti FROM tarkistuspiste tp WHERE 5 <= (SELECT COUNT(asiakas_id) FROM tarkistus t WHERE tp.tp_id = t.tp_id GROUP BY tp_id, asiakas_id)
Results in
Stacktrace: