-
Notifications
You must be signed in to change notification settings - Fork 442
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
Healthcheck indicates healthy before processing docker-entrypoint-initdb.d #610
Comments
Do you have?
|
Yes
|
on 2611c39
|
grooverdan
added a commit
to grooverdan/mariadb-docker
that referenced
this issue
Sep 2, 2024
Based on user reports, a `connect` test can observer a non-"Can't connect" error message. Because this passes other tests, like innodb_initialized might succeeded. The final test -z "$connect_s" is also true, leaving the user with an incorrect test result. Maybe the healthcheck cnf hasn't been created yet? Either way, ruggardise the final test to ensure a healthy connect test occured. Closes MariaDB#610
I think I have a fix in #612. If you have a chance to test it that would be appreciated. FYI @mariushosting |
grooverdan
added a commit
to grooverdan/mariadb-docker
that referenced
this issue
Sep 2, 2024
Based on user reports, a `connect` test can observer a non-"Can't connect" error message. Because this passes other tests, like innodb_initialized might succeeded. The final test -z "$connect_s" is also true, leaving the user with an incorrect test result. Maybe the healthcheck cnf hasn't been created yet? Either way, ruggardise the final test to ensure a healthy connect test occured. Closes MariaDB#610
grooverdan
added a commit
to grooverdan/mariadb-docker
that referenced
this issue
Sep 2, 2024
Based on user reports, a `connect` test can observer a non-"Can't connect" error message. Because this passes other tests, like innodb_initialized might succeeded. The final test -z "$connect_s" is also true, leaving the user with an incorrect test result. Maybe the healthcheck cnf hasn't been created yet? Either way, ruggardise the final test to ensure a healthy connect test occured. Narrow down the scope of healthcheck --connect failures to the mariadb client errors "Can't connect". May as well look at same @skip-networking system variable on TCP just in case. 28000 errors, per https://mariadb.com/kb/en/mariadb-error-code-reference/ are client errors after a connection, indicating that the start of a tcp connection occured. Closes MariaDB#610
For testing ghcr.io/mariadb/mariadb:11.5.2-noble docker-library/official-images#17468 has the official change. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://mariadb.com/kb/en/using-healthcheck-sh/
When configured like
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
the healthcheck indicates to dependent containers that it is healthy even though initialization from/docker-entrypoint-initdb.d/
has not completed.You can see below Redmine performing a migration before the database is fully initialized
The text was updated successfully, but these errors were encountered: