commit:     4bed973615abf5005b8cd8ed73e64ebc01caed02
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jan  9 03:20:23 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan  9 03:20:23 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4bed9736

dev-db/mariadb-connector-c: add limit to src_test ping attempts

It's unacceptable to loop indefinitely as it'll hang the emerge process.

Bug: https://bugs.gentoo.org/942287
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-db/mariadb-connector-c/mariadb-connector-c-3.3.8.ebuild | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-3.3.8.ebuild 
b/dev-db/mariadb-connector-c/mariadb-connector-c-3.3.8.ebuild
index 1786ce89ebb3..eb4f7ef8cec1 100644
--- a/dev-db/mariadb-connector-c/mariadb-connector-c-3.3.8.ebuild
+++ b/dev-db/mariadb-connector-c/mariadb-connector-c-3.3.8.ebuild
@@ -108,8 +108,15 @@ multilib_src_test() {
        mysql_install_db --no-defaults --datadir="${T}/mysql/data" || die
        mysqld --no-defaults --datadir="${T}/mysql/data" 
--socket="${T}/mysql/mysql.sock" --skip-grant-tables --skip-networking &
 
+       local attempts=0
        while ! mysqladmin ping --socket="${T}/mysql/mysql.sock" --silent ; do
+               # 5 minutes should be more than enough
+               if [[ ${attempts} -gt 300 ]] ; then
+                       die "mysqld not found after 300 seconds, aborting"
+               fi
+
                sleep 1
+               attempts=$((attempts + 1))
        done
 
        cd unittest/libmariadb || die

Reply via email to