Univention Bugzilla – Full Text Bug Listing |
Summary: | deb-triggers blocks update due to temporarily unconfigured package | ||
---|---|---|---|
Product: | UCS | Reporter: | Arvid Requate <requate> |
Component: | UCR - Info Files | Assignee: | Arvid Requate <requate> |
Status: | CLOSED FIXED | QA Contact: | Jürn Brodersen <brodersen> |
Severity: | normal | ||
Priority: | P5 | CC: | brodersen, damrose |
Version: | UCS 4.3 | ||
Target Milestone: | UCS 4.3-1-errata | ||
Hardware: | Other | ||
OS: | Linux | ||
What kind of report is it?: | Development Internal | What type of bug is this?: | --- |
Who will be affected by this bug?: | --- | How will those affected feel about the bug?: | --- |
User Pain: | Enterprise Customer affected?: | ||
School Customer affected?: | ISV affected?: | ||
Waiting Support: | Flags outvoted (downgraded) after PO Review: | ||
Ticket number: | Bug group (optional): | ||
Max CVSS v3 score: | |||
Bug Depends on: | 23737 | ||
Bug Blocks: | 47196 |
Description
Arvid Requate
2018-07-16 13:01:31 CEST
https://manpages.debian.org/stretch/dpkg-dev/deb-triggers.5.en.html recommends using "interest-nowait", which might fix this problem. *But* Jürn just pointed out that the trigger function defined in univention-config.postinst is responsible to run "univention-config-registry update". Now, if a univention package update defines a new UCR template or variable, it may not be available immediately. We are currently unsure about this. Reading the documentation in triggers.txt (linked in https://wiki.debian.org/DpkgTriggers), it looks like the triggers are run after the triggering package "T" (which wants to register a new UCR template/variable) would normally go into the state "installed". As some other package "I" (univention-config in this case) is interested to get notified, the package "T" is put into "triggers-awaited" state instead (and "I" is put into "triggers-pending"). Then, at some later point in time, the triggers function defined in the postinst of "I" is run. We didn't yet find out at what point this happens. For our case two things follow: 1) Jürns concern regarding "UCR update" should not actually be a problem for us, because the package "T" can't rely on this UCR commit during its postinst run anyway. The triggers are executed after the postinst run in all cases. 2) perl may actually not be the triggering package here After dealing with these theoretical concerns, we made an experiment by adjusting changing univention-config.triggers to "interest-noawait". Actually we took a UCS 4.3-0 system and adjusted /var/lib/dpkg/triggers/File to modify the "interest" type of univention-config to "noawait". After that the direct update to 4.3-1-errata-test worked. 325ca42965 | Relax trigger execution to "noawait" 006266b9f1 | Advisory My update from updates-test worked. The tests are working again, fix looks goods. Due to bug 47372 the QA took a little bit longer, but now everything seems to be good. FIX: OK YAML: OK |