Comment # 20 on bug 1195463 from
Hmm, in this case only deleting the cache file helped :-/
I know it's hard to find out in hindsight, but do you remember if the cache
file you deleted had a newer timestamp than the profile in the
apparmor-profiles rpm installed during zypper up?


Anyway, I think there are two things I need to fix:

1. The timestamp of the precompiled cache (/usr/share/apparmor/cache/) is older
than the profiles.
cp -r instead of cp -a for copying the cache in %install will fix that, and
should prevent generation of cache files in /var/cache/apparmor (you might need
to delete the content of /var/cache/apparmor to see this effect - nevertheless
I'm not sure if I should do that in %post. Note that this is just about getting
rid of some files in /var/cache/apparmor, but together with 2 the cache file
shouldn't hurt.)

2. Reloading the profiles (which also means updating the cache) is done in
%post of apparmor-profiles _and_ apparmor-abstractions.
Unfortunately the first reload happens when only one of the packages got
updated, therefore the cache is based on a half-updated state. When the second
package gets updated, the cache is new enough (newer than the packaged
profiles) and won't get updated again.
The change for 1 makes it less likely that this happens, but to be sure, I'll
move reloading the profiles from %post to %posttrans.


I just submitted a package with these fixes to home:cboltz/apparmor.
Can you please test if you still can reproduce the issue with these packages?
(Please do NOT delete any cache files manually before installing the packages
to get a real-world result. You should get updated cache files in
/var/cache/apparmor/, probably with the same content/checksum as in
/usr/share/apparmor/cache/.)


You are receiving this mail because: