-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DB Maintenance dialog missing #5110
Comments
if you by chance have two monitors, see if the dialogue window is on the other display. if so, consider closing this bug report. |
This is weird... And it might be caused by some GTK weirdness that I personally don't like. The dialog shows on whichever screen GTK considers "active", so if you had dt opened on one screen and some apps on another - then dialog will get shown on the other screen, not the one where dt was. If there were some apps in the foreground the dialog might be hidden behind them, especially if you switched to them (or WM switched to them) between the time main window was freed and other app captured focus, since dialog doesn't capture focus. Additionally it's not really a dialog window in GTK sense so I wonder if setting it's position to either mouse or center would help a bit... |
I believe that would be what one would expect when utilizing more than one display. I constantly have negative comments when dialogues appear on a screen where the mouse/focus is not. |
No, I don't have. |
is perhaps your screen display larger than your monitor? |
Can you try #5116 if you are able to compile dt? Another try might be to switch maintenance rule from "on close" to "on start" in options and see if that helps. |
Switched to on start, reopened it and nothing happened |
This is very very weird. This uses same code as for example "your database format is too old" so it should by all means create dialog window without any problem... Would need deeper look into it (or maybe switch dialog to native gtk dialogs?) |
Maybe try not minimizing the window on exit? It's actually not the best way to close the application, replacing the contents of the window with some shutdown message would be nicer. |
Not responding message means that GTK main loop was stalled (exited?) by that point. I guess there's some bug in how exit is done in dt. |
This is veryvery weird. In #5124 I changed this to not minimize main window and show dialog on center on closing and my builds exit completelly normally, even with dialog opening (of course dialog keeps dt from being closed). I need to do something to get #5124 integrated then and see if this helps - @gadolf66 can you please try code from #5124? |
hmm... If you change maintenance to ask |
I tried that before but it doesn't save it because the only way to quit dt is killing the process. |
I can try it. Could you please customize the build steps below, I'm not good at it:
|
weird. settings should get saved before you exit darktable. that's how I usually ride ;) anyway - open file |
Thanks. |
This is very weird and has nothing to do with maintenance dialog 🤔 for
maintenance yo can change to 'never' and it'll never run. There might be
problem with your db though.
Can you open db with sqlite3 and do PRAGMA integrity_check for both
library. Db and data. Db?
czw., 21 maj 2020, 17:21 użytkownik gadolf <notifications@github.com>
napisał:
… Thanks.
Now it haven't freeze, but also haven't done any maintenance (I guess).
There is an apparently infinite SELECT loop going on, so I'm not sure if
the maintenance check hasn't been reached at that point in code.
But when it was set to *on close* the loop would stop and a log message
showed that the maintenance check has been reached (see terminal images
above)
Debugging session: https://filebin.net/4wdhotoo6sqqe2qj
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5110 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACRRKFNJMVPXYVZW6U5SRO3RSVBHDANCNFSM4NDT3QEA>
.
|
Done, but same error. |
I'm about to rebuild the 25k images database, since it's difficult to simulate this without my specifics (database & os) |
you can set db maintenance to "never" to not show dialog or use sqlite3 manually to do |
Vacuum didn't do it.
I believe this means a pop up window should show up, right? |
with 'never' popup will not be there at all. |
It would help to have a backtrace when darktable hangs on exit. E.g. do "killall -SEGV darktable" at that point, it should write it to a file I think. |
Here it is |
Your darktable binary was built without debug symbols, so backtrace is missing a lot of information. Could you rebuild it, so debug symbols aren't stripped from the binary? Then generate backtrace again. |
@gadolf66: change your build instructions to: mkdir /home/gustavo/darktable
git clone https://github.com/darktable-org/darktable.git
cd darktable/
#git checkout negadoctor
git submodule init
git submodule update
./build.sh --prefix /opt/darktable --build-type RelWithDebInfo
sudo cmake --build "/home/gustavo/darktable/build" --target install -- -j4 build type |
Just for my understanding, these instructions are to get the current master, not your pr, right? |
yep. my pr is currently not the focus here. |
I finished building and the test ran smoothly. |
if your db maintenance setting is set to 'never' then it really won't show
any dialog nor do any db maintenance :)
so now if you can, switch db maintenance to 'on start' and let's see what's
going on.
pt., 22 maj 2020 o 21:04 gadolf <notifications@github.com> napisał(a):
… I finished building and the test ran smoothly.
It closed normally (but didn't ask for any maintenance. Shouldn't it?)
Below is the debugging session, in case you want it.
dt.txt <https://github.com/darktable-org/darktable/files/4669909/dt.txt>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5110 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACRRKFOH3YDUHHRELRJLDXTRS3EDVANCNFSM4NDT3QEA>
.
--
Pozdrawiam,
Hubert Kowalski
|
No maintenance dialog, but it closed normally. |
Problem solved! |
I think rather on lua repo. |
Describe the bug
On close, darktable detects maintenance needed but does not show dialog, so it freezes (never closes, waiting for user input
To Reproduce
Force database maintenance needed, open darktable in debug mode and quit darktable.
Expected behavior
darktable minimizes but doesn't close, and debug session suggests it is waiting for user input.
Screenshots
Platform (please complete the following information):
Additional context
The text was updated successfully, but these errors were encountered: