Santiago Ruano Rincón
2024-12-06 12:00:01 UTC
Package: release.debian.org
Severity: normal
Tags: bookworm
User: ***@packages.debian.org
Usertags: pu
X-Debbugs-Cc: ***@packages.debian.org, Thomas Braun <***@byte-physics.de>, Picca Frédéric-Emmanuel <***@debian.org>
Control: affects -1 + src:tango
Dear Release Team,
Please consider this tango update for bookworm. It mainly fixes
https://bugs.debian.org/1062979, which breaks using the tango DB, due to
incompatibilities with MariaDB 10.11, the version packaged in bookworm.
This has been broken since the bookworm release.
As a minor side change, it changes the Salsa CI configuration to run the
pipeline on the correct release: bookworm instead of experimental.
[ Impact ]
As #1062979 describes, tango features, functions or tools (such as
tango-starter or tango-admin) relying on the mariadb database will
continue to be unable to start or use the database.
[ Tests ]
I reproduced the issue and verified the fix just installing tango-db,
tango-accesscontrol and tango-starter along with mariadb-server in
bookworm. I have also tried using tango_admin to add a device property
in the database. The proposed changes include an autopkgtest that helps to
confirm the issue is fixed.
Without the fix: https://salsa.debian.org/science-team/tango/-/jobs/6707942
With the fix: https://salsa.debian.org/science-team/tango/-/jobs/6707881
[ Risks ]
Any non-identified risk of regression may be outweighed by being able to
start tango-starter and/or using the tango database.
[ Checklist ]
[x] *all* changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in (old)stable
[x] the issue is verified as fixed in unstable
A preliminary fix was included in unstable with 9.4.2+dfsg1-1:
https://tracker.debian.org/news/1451906/accepted-tango-942dfsg1-1-source-into-unstable/
and the complete upstream patch in experimental with 10.0.0+dfsg1-1~exp2
(now in unstable, since 10.0.0+dfsg1-1):
https://tracker.debian.org/news/1583619/accepted-tango-1000dfsg1-1exp2-source-into-experimental/
[ Changes ]
The proposed update is made of the following changes:
* debian/patches/0001-Fix-timestamp-columns-in-Mariadb-10.11-and-newer.patch
As tagged in the patch, this is based on the upstream fix (merged) to
address the issue. It is a backport of
https://gitlab.com/tango-controls/TangoDatabase/-/merge_requests/95,
removing the parts that cannot be applied in tango 9.3.4. The git commit
message is self-explaining:
Subject: [PATCH] Fix timestamp columns in Mariadb 10.11 and newer
...
This problem appears in MariaDb 10.11 since default value of
explicit_defaults_for_timestamp changed from OFF to ON, setting it to
OFF (set global explicit_defaults_for_timestamp=OFF;) make the
create_db_tables.sql.in work properly.
* debian/dbconfig-common/data/tango-db/upgrade/mysql/9.3.4
Applies similar changes in the existing tango database than those from
the patch above, at upgrade time.
* debian/tests/starter-basic
autopkgtest that helps to verify that tango-starter can effectively
start. tango-starter needs to register the Starter device in the tango
database, which is done in bookworm by the tango-starter's init.d,
using tango_admin:
do_start()
...
# register the tango-starter if necessary
tango_admin --check-device tango/admin/`hostname` || tango_admin --add-server Starter/`hostname` Starter tango/admin/`hostname` || return 2
...
Moreover, the autopkgtest also verifies it the database can be used,
adding a device property:
# test https://bugs.debian.org/1062979:
#
tango_admin --add-property sys/tg_test/1 key value
...
as suggested by Thomas in https://bugs.debian.org/1062979#39
* debian/gitlab-ci.yml
This changes the configured RELEASE from experimental to bookworm.
I (also) relied on Salsa CI for testing the update, and without this
change, for any future proposal, the Salsa CI user would need to
manually override the RELEASE variable, as I had to do.
[ Other info ]
None.
Thank in advance,
-- Santiago
Severity: normal
Tags: bookworm
User: ***@packages.debian.org
Usertags: pu
X-Debbugs-Cc: ***@packages.debian.org, Thomas Braun <***@byte-physics.de>, Picca Frédéric-Emmanuel <***@debian.org>
Control: affects -1 + src:tango
Dear Release Team,
Please consider this tango update for bookworm. It mainly fixes
https://bugs.debian.org/1062979, which breaks using the tango DB, due to
incompatibilities with MariaDB 10.11, the version packaged in bookworm.
This has been broken since the bookworm release.
As a minor side change, it changes the Salsa CI configuration to run the
pipeline on the correct release: bookworm instead of experimental.
[ Impact ]
As #1062979 describes, tango features, functions or tools (such as
tango-starter or tango-admin) relying on the mariadb database will
continue to be unable to start or use the database.
[ Tests ]
I reproduced the issue and verified the fix just installing tango-db,
tango-accesscontrol and tango-starter along with mariadb-server in
bookworm. I have also tried using tango_admin to add a device property
in the database. The proposed changes include an autopkgtest that helps to
confirm the issue is fixed.
Without the fix: https://salsa.debian.org/science-team/tango/-/jobs/6707942
With the fix: https://salsa.debian.org/science-team/tango/-/jobs/6707881
[ Risks ]
Any non-identified risk of regression may be outweighed by being able to
start tango-starter and/or using the tango database.
[ Checklist ]
[x] *all* changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in (old)stable
[x] the issue is verified as fixed in unstable
A preliminary fix was included in unstable with 9.4.2+dfsg1-1:
https://tracker.debian.org/news/1451906/accepted-tango-942dfsg1-1-source-into-unstable/
and the complete upstream patch in experimental with 10.0.0+dfsg1-1~exp2
(now in unstable, since 10.0.0+dfsg1-1):
https://tracker.debian.org/news/1583619/accepted-tango-1000dfsg1-1exp2-source-into-experimental/
[ Changes ]
The proposed update is made of the following changes:
* debian/patches/0001-Fix-timestamp-columns-in-Mariadb-10.11-and-newer.patch
As tagged in the patch, this is based on the upstream fix (merged) to
address the issue. It is a backport of
https://gitlab.com/tango-controls/TangoDatabase/-/merge_requests/95,
removing the parts that cannot be applied in tango 9.3.4. The git commit
message is self-explaining:
Subject: [PATCH] Fix timestamp columns in Mariadb 10.11 and newer
...
This problem appears in MariaDb 10.11 since default value of
explicit_defaults_for_timestamp changed from OFF to ON, setting it to
OFF (set global explicit_defaults_for_timestamp=OFF;) make the
create_db_tables.sql.in work properly.
* debian/dbconfig-common/data/tango-db/upgrade/mysql/9.3.4
Applies similar changes in the existing tango database than those from
the patch above, at upgrade time.
* debian/tests/starter-basic
autopkgtest that helps to verify that tango-starter can effectively
start. tango-starter needs to register the Starter device in the tango
database, which is done in bookworm by the tango-starter's init.d,
using tango_admin:
do_start()
...
# register the tango-starter if necessary
tango_admin --check-device tango/admin/`hostname` || tango_admin --add-server Starter/`hostname` Starter tango/admin/`hostname` || return 2
...
Moreover, the autopkgtest also verifies it the database can be used,
adding a device property:
# test https://bugs.debian.org/1062979:
#
tango_admin --add-property sys/tg_test/1 key value
...
as suggested by Thomas in https://bugs.debian.org/1062979#39
* debian/gitlab-ci.yml
This changes the configured RELEASE from experimental to bookworm.
I (also) relied on Salsa CI for testing the update, and without this
change, for any future proposal, the Salsa CI user would need to
manually override the RELEASE variable, as I had to do.
[ Other info ]
None.
Thank in advance,
-- Santiago