| Summary: | Inaccessible remote database causes boot time to take several minutes without even displaying the startup splashscreen | ||
|---|---|---|---|
| Product: | [Applications] digikam | Reporter: | michael2macdonald |
| Component: | Database-Mysql | Assignee: | Digikam Developers <digikam-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | metzpinguin |
| Priority: | NOR | ||
| Version First Reported In: | 8.0.0 | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/graphics/digikam/commit/75516b571e57fd09beddcaf0606564de7c9f21fe | Version Fixed/Implemented In: | 8.1.0 |
| Sentry Crash Report: | |||
| Attachments: |
database-error
"Failed to open the database" (Error Window) |
||
|
Description
michael2macdonald
2023-04-17 18:15:49 UTC
Created attachment 158176 [details]
database-error
Such a window already exists, which appears for me after less than 1 second. See the screenshot.
Maik
Git commit 75516b571e57fd09beddcaf0606564de7c9f21fe by Maik Qualmann. Committed on 18/04/2023 at 19:41. Pushed by mqualmann into branch 'master'. show database connection error after 10 seconds FIXED-IN: 8.1.0 M +2 -1 NEWS M +11 -0 core/libs/database/engine/dbengineguierrorhandler.cpp https://invent.kde.org/graphics/digikam/commit/75516b571e57fd09beddcaf0606564de7c9f21fe Created attachment 158199 [details] "Failed to open the database" (Error Window) (In reply to Maik Qualmann from comment #1) > Created attachment 158176 [details] > database-error > > Such a window already exists, which appears for me after less than 1 second. > See the screenshot. > > Maik Thanks for the response. As you pointed out, I was wrong about there not being a reconnecting/loading window. After reproducing the error again, I timed the startup and it took over 2 minutes and 20 seconds before the "reconnecting" window appeared. During this time the startup splash screen was never displayed. After the reconnecting window appears, it continues to attempt to connect to the database for over 20 minutes, only stopping when I pressed the "close" button. After the window closes, nothing happens for 2 minutes (again I timed it) until another "error window" appears (See the screenshot I attached). This new window has an error, instructions to check the database settings in the next window, and an "ok" button to go to the next window. Once the "ok" button is pressed the database settings window immediately opens. The reconnecting window is somewhat misleading because there is no indication to the user that you will be able to change the database settings in a new window after pressing the "close" button. To the user, "close" implies closing the program or window and nothing more. Updated requests: - The database reconnecting window should not take 2 minutes before appearing. - The database reconnecting window should have a second button that takes the user straight to the database settings window and the current close button should close the application without opening the error window or database setting window. - The database loading window should time out after a reasonable duration (if the user does not close it or press the button to skip to the database settings) and then (and only then) present the user with the error window (see attached screenshot). - The error window should not take 2 minutes before appearing Less important, assuming the database loading window appears immediately: - I still believe that the startup splash screen should display earlier (preferably within the first 10 seconds) *no matter what* so that the user knows the application is starting. This could mean fully displaying the startup splash screen before any other startup begins or separating the startup splash screen and other startup code using a non-blocking method such as threads. I can send more details about my system if you can't reproduce the bug where it takes over 2 minutes for the reconnecting and error windows to open. (In reply to Maik Qualmann from comment #2) > Git commit 75516b571e57fd09beddcaf0606564de7c9f21fe by Maik Qualmann. > Committed on 18/04/2023 at 19:41. > Pushed by mqualmann into branch 'master'. > > show database connection error after 10 seconds > FIXED-IN: 8.1.0 > > M +2 -1 NEWS > M +11 -0 core/libs/database/engine/dbengineguierrorhandler.cpp > > https://invent.kde.org/graphics/digikam/commit/ > 75516b571e57fd09beddcaf0606564de7c9f21fe Thanks for adding a 10-second timeout to display the "reconnecting" dialog (I now know is called the "Progress Dialog"). I apologize, my page did not refresh so I did not see your commit before I posted my previous response. I still have a few requests for changes to the "Progress Dialog" and the error window ("consultUserForError" dialog?). The most important changes are here: - A timeout so the Progress Dialog does not continue to reconnect forever - The "showProgressDialog" and "consultUserForError" dialog take over 2 minutes to appear for me (maybe an issue with my system) |