* [PATCH 0/1] populate-volatile.sh: detect the change of configuration files @ 2015-03-20 6:27 Chen Qi 2015-03-20 6:27 ` [PATCH 1/1] " Chen Qi 0 siblings, 1 reply; 5+ messages in thread From: Chen Qi @ 2015-03-20 6:27 UTC (permalink / raw) To: openembedded-core The following changes since commit 0752c79282b1cc9699743e719518e6c341d50a3a: systemd: fix /var/log/journal ownership (2015-03-16 17:38:51 +0000) are available in the git repository at: git://git.openembedded.org/openembedded-core-contrib ChenQi/populate-volatile-cache http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=ChenQi/populate-volatile-cache Chen Qi (1): populate-volatile.sh: detect the change of configuration files .../initscripts/initscripts-1.0/populate-volatile.sh | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) -- 1.9.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1] populate-volatile.sh: detect the change of configuration files 2015-03-20 6:27 [PATCH 0/1] populate-volatile.sh: detect the change of configuration files Chen Qi @ 2015-03-20 6:27 ` Chen Qi 2015-04-21 6:00 ` ChenQi 0 siblings, 1 reply; 5+ messages in thread From: Chen Qi @ 2015-03-20 6:27 UTC (permalink / raw) To: openembedded-core In case the configuration files are modified by user, the cached script, /etc/volatile.cache should not be executed. Instead, the configuration files should be parsed again and generate the new cache. Otherwise, the user modifications take no effect which would obviously confuse users. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> --- .../initscripts/initscripts-1.0/populate-volatile.sh | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh index 904037e..eaf0f1c 100755 --- a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh +++ b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh @@ -204,9 +204,25 @@ do done exec 9>&- -if test -e ${ROOT_DIR}/etc/volatile.cache -a "$VOLATILE_ENABLE_CACHE" = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" +# Check whether configuration files have changed, if so, the cache needs to be removed +# and generated again +CACHE_MATCH="no" +CACHE_DATA="${ROOT_DIR}/etc/.volatile.cache.data" +CACHE_TMP="${ROOT_DIR}/etc/.volatile.cache.tmp" +VOLATILE_CONFFILES="${ROOT_DIR}/etc/default/volatiles/*" +if [ "$VOLATILE_ENABLE_CACHE" = "yes" ]; then + stat -c '%s %Y %n' $VOLATILE_CONFFILES | awk -F/ '{print $1 " " $NF;}' > $CACHE_TMP + if [ -e $CACHE_DATA ]; then + if cmp $CACHE_DATA $CACHE_TMP > /dev/null; then + CACHE_MATCH="yes" + fi + fi +fi + +if test -e ${ROOT_DIR}/etc/volatile.cache -a "$VOLATILE_ENABLE_CACHE" = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" -a "$CACHE_MATCH" = "yes" then sh ${ROOT_DIR}/etc/volatile.cache + [ -e $CACHE_TMP ] && rm $CACHE_TMP else rm -f ${ROOT_DIR}/etc/volatile.cache ${ROOT_DIR}/etc/volatile.cache.build for file in `ls -1 "${CFGDIR}" | sort`; do @@ -214,6 +230,7 @@ else done [ -e ${ROOT_DIR}/etc/volatile.cache.build ] && sync && mv ${ROOT_DIR}/etc/volatile.cache.build ${ROOT_DIR}/etc/volatile.cache + [ -e $CACHE_TMP ] && mv $CACHE_TMP $CACHE_DATA fi if [ -z "${ROOT_DIR}" ] && [ -f /etc/ld.so.cache ] && [ ! -f /var/run/ld.so.cache ] -- 1.9.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] populate-volatile.sh: detect the change of configuration files 2015-03-20 6:27 ` [PATCH 1/1] " Chen Qi @ 2015-04-21 6:00 ` ChenQi 2015-04-21 12:34 ` Bryan Evenson 0 siblings, 1 reply; 5+ messages in thread From: ChenQi @ 2015-04-21 6:00 UTC (permalink / raw) To: openembedded-core ping ... //Chen Qi On 03/20/2015 02:27 PM, Chen Qi wrote: > In case the configuration files are modified by user, the cached script, > /etc/volatile.cache should not be executed. Instead, the configuration > files should be parsed again and generate the new cache. Otherwise, the > user modifications take no effect which would obviously confuse users. > > Signed-off-by: Chen Qi <Qi.Chen@windriver.com> > --- > .../initscripts/initscripts-1.0/populate-volatile.sh | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) > > diff --git a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > index 904037e..eaf0f1c 100755 > --- a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > +++ b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > @@ -204,9 +204,25 @@ do > done > exec 9>&- > > -if test -e ${ROOT_DIR}/etc/volatile.cache -a "$VOLATILE_ENABLE_CACHE" = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" > +# Check whether configuration files have changed, if so, the cache needs to be removed > +# and generated again > +CACHE_MATCH="no" > +CACHE_DATA="${ROOT_DIR}/etc/.volatile.cache.data" > +CACHE_TMP="${ROOT_DIR}/etc/.volatile.cache.tmp" > +VOLATILE_CONFFILES="${ROOT_DIR}/etc/default/volatiles/*" > +if [ "$VOLATILE_ENABLE_CACHE" = "yes" ]; then > + stat -c '%s %Y %n' $VOLATILE_CONFFILES | awk -F/ '{print $1 " " $NF;}' > $CACHE_TMP > + if [ -e $CACHE_DATA ]; then > + if cmp $CACHE_DATA $CACHE_TMP > /dev/null; then > + CACHE_MATCH="yes" > + fi > + fi > +fi > + > +if test -e ${ROOT_DIR}/etc/volatile.cache -a "$VOLATILE_ENABLE_CACHE" = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" -a "$CACHE_MATCH" = "yes" > then > sh ${ROOT_DIR}/etc/volatile.cache > + [ -e $CACHE_TMP ] && rm $CACHE_TMP > else > rm -f ${ROOT_DIR}/etc/volatile.cache ${ROOT_DIR}/etc/volatile.cache.build > for file in `ls -1 "${CFGDIR}" | sort`; do > @@ -214,6 +230,7 @@ else > done > > [ -e ${ROOT_DIR}/etc/volatile.cache.build ] && sync && mv ${ROOT_DIR}/etc/volatile.cache.build ${ROOT_DIR}/etc/volatile.cache > + [ -e $CACHE_TMP ] && mv $CACHE_TMP $CACHE_DATA > fi > > if [ -z "${ROOT_DIR}" ] && [ -f /etc/ld.so.cache ] && [ ! -f /var/run/ld.so.cache ] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] populate-volatile.sh: detect the change of configuration files 2015-04-21 6:00 ` ChenQi @ 2015-04-21 12:34 ` Bryan Evenson 2015-04-21 20:50 ` Bryan Evenson 0 siblings, 1 reply; 5+ messages in thread From: Bryan Evenson @ 2015-04-21 12:34 UTC (permalink / raw) To: ChenQi, openembedded-core@lists.openembedded.org Chen, > -----Original Message----- > From: openembedded-core-bounces@lists.openembedded.org > [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf > Of ChenQi > Sent: Tuesday, April 21, 2015 2:00 AM > To: openembedded-core@lists.openembedded.org > Subject: Re: [OE-core] [PATCH 1/1] populate-volatile.sh: detect the change > of configuration files > > ping ... > > //Chen Qi > > On 03/20/2015 02:27 PM, Chen Qi wrote: > > In case the configuration files are modified by user, the cached > > script, /etc/volatile.cache should not be executed. Instead, the > > configuration files should be parsed again and generate the new cache. > > Otherwise, the user modifications take no effect which would obviously > confuse users. > > > > Signed-off-by: Chen Qi <Qi.Chen@windriver.com> > > --- > > .../initscripts/initscripts-1.0/populate-volatile.sh | 19 > ++++++++++++++++++- > > 1 file changed, 18 insertions(+), 1 deletion(-) > > > > diff --git > > a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > > b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > > index 904037e..eaf0f1c 100755 > > --- > > a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > > +++ b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile. > > +++ sh > > @@ -204,9 +204,25 @@ do > > done > > exec 9>&- > > > > -if test -e ${ROOT_DIR}/etc/volatile.cache -a "$VOLATILE_ENABLE_CACHE" > = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" > > +# Check whether configuration files have changed, if so, the cache > > +needs to be removed # and generated again CACHE_MATCH="no" > > +CACHE_DATA="${ROOT_DIR}/etc/.volatile.cache.data" > > +CACHE_TMP="${ROOT_DIR}/etc/.volatile.cache.tmp" > > +VOLATILE_CONFFILES="${ROOT_DIR}/etc/default/volatiles/*" > > +if [ "$VOLATILE_ENABLE_CACHE" = "yes" ]; then > > + stat -c '%s %Y %n' $VOLATILE_CONFFILES | awk -F/ '{print $1 " " $NF;}' > > $CACHE_TMP > > + if [ -e $CACHE_DATA ]; then > > + if cmp $CACHE_DATA $CACHE_TMP > /dev/null; then > > + CACHE_MATCH="yes" > > + fi > > + fi > > +fi > > + > > +if test -e ${ROOT_DIR}/etc/volatile.cache -a "$VOLATILE_ENABLE_CACHE" > = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" -a "$CACHE_MATCH" = > "yes" > > then > > sh ${ROOT_DIR}/etc/volatile.cache > > + [ -e $CACHE_TMP ] && rm $CACHE_TMP > > else > > rm -f ${ROOT_DIR}/etc/volatile.cache > ${ROOT_DIR}/etc/volatile.cache.build > > for file in `ls -1 "${CFGDIR}" | sort`; do @@ -214,6 +230,7 @@ else > > done > > > > [ -e ${ROOT_DIR}/etc/volatile.cache.build ] && sync && mv > > ${ROOT_DIR}/etc/volatile.cache.build ${ROOT_DIR}/etc/volatile.cache > > + [ -e $CACHE_TMP ] && mv $CACHE_TMP $CACHE_DATA > > fi > > > > if [ -z "${ROOT_DIR}" ] && [ -f /etc/ld.so.cache ] && [ ! -f > > /var/run/ld.so.cache ] > I didn't see this patch when I was working through my issues. I'll test this patch on my system with my change to pkg_postinst removed and verify I get the same end result. Regards, Bryan > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] populate-volatile.sh: detect the change of configuration files 2015-04-21 12:34 ` Bryan Evenson @ 2015-04-21 20:50 ` Bryan Evenson 0 siblings, 0 replies; 5+ messages in thread From: Bryan Evenson @ 2015-04-21 20:50 UTC (permalink / raw) To: ChenQi, openembedded-core@lists.openembedded.org Chen, > -----Original Message----- > From: openembedded-core-bounces@lists.openembedded.org > [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf > Of Bryan Evenson > Sent: Tuesday, April 21, 2015 8:35 AM > To: ChenQi; openembedded-core@lists.openembedded.org > Subject: Re: [OE-core] [PATCH 1/1] populate-volatile.sh: detect the change > of configuration files > > Chen, > > > -----Original Message----- > > From: openembedded-core-bounces@lists.openembedded.org > > [mailto:openembedded-core-bounces@lists.openembedded.org] On > Behalf Of > > ChenQi > > Sent: Tuesday, April 21, 2015 2:00 AM > > To: openembedded-core@lists.openembedded.org > > Subject: Re: [OE-core] [PATCH 1/1] populate-volatile.sh: detect the > > change of configuration files > > > > ping ... > > > > //Chen Qi > > > > On 03/20/2015 02:27 PM, Chen Qi wrote: > > > In case the configuration files are modified by user, the cached > > > script, /etc/volatile.cache should not be executed. Instead, the > > > configuration files should be parsed again and generate the new cache. > > > Otherwise, the user modifications take no effect which would > > > obviously > > confuse users. > > > > > > Signed-off-by: Chen Qi <Qi.Chen@windriver.com> > > > --- > > > .../initscripts/initscripts-1.0/populate-volatile.sh | 19 > > ++++++++++++++++++- > > > 1 file changed, 18 insertions(+), 1 deletion(-) > > > > > > diff --git > > > a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > > > b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > > > index 904037e..eaf0f1c 100755 > > > --- > > > a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh > > > +++ b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile. > > > +++ sh > > > @@ -204,9 +204,25 @@ do > > > done > > > exec 9>&- > > > > > > -if test -e ${ROOT_DIR}/etc/volatile.cache -a > "$VOLATILE_ENABLE_CACHE" > > = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" > > > +# Check whether configuration files have changed, if so, the cache > > > +needs to be removed # and generated again CACHE_MATCH="no" > > > +CACHE_DATA="${ROOT_DIR}/etc/.volatile.cache.data" > > > +CACHE_TMP="${ROOT_DIR}/etc/.volatile.cache.tmp" > > > +VOLATILE_CONFFILES="${ROOT_DIR}/etc/default/volatiles/*" > > > +if [ "$VOLATILE_ENABLE_CACHE" = "yes" ]; then > > > + stat -c '%s %Y %n' $VOLATILE_CONFFILES | awk -F/ '{print $1 " " $NF;}' > > > $CACHE_TMP > > > + if [ -e $CACHE_DATA ]; then > > > + if cmp $CACHE_DATA $CACHE_TMP > /dev/null; then > > > + CACHE_MATCH="yes" > > > + fi > > > + fi > > > +fi > > > + > > > +if test -e ${ROOT_DIR}/etc/volatile.cache -a > "$VOLATILE_ENABLE_CACHE" > > = "yes" -a "x$1" != "xupdate" -a "x$clearcache" = "x0" -a > > "$CACHE_MATCH" = "yes" > > > then > > > sh ${ROOT_DIR}/etc/volatile.cache > > > + [ -e $CACHE_TMP ] && rm $CACHE_TMP > > > else > > > rm -f ${ROOT_DIR}/etc/volatile.cache > > ${ROOT_DIR}/etc/volatile.cache.build > > > for file in `ls -1 "${CFGDIR}" | sort`; do @@ -214,6 +230,7 @@ else > > > done > > > > > > [ -e ${ROOT_DIR}/etc/volatile.cache.build ] && sync && mv > > > ${ROOT_DIR}/etc/volatile.cache.build ${ROOT_DIR}/etc/volatile.cache > > > + [ -e $CACHE_TMP ] && mv $CACHE_TMP $CACHE_DATA > > > fi > > > > > > if [ -z "${ROOT_DIR}" ] && [ -f /etc/ld.so.cache ] && [ ! -f > > > /var/run/ld.so.cache ] > > > > I didn't see this patch when I was working through my issues. I'll test this > patch on my system with my change to pkg_postinst removed and verify I > get the same end result. I reverted commit 167025e6d72c44cacfdc5d8b98e942066df09a4f on my system and applied your patch and applied the upgrade as before. /etc/volatile.cache was updated on my system and I don't see any of the problems I was experiencing previously. This fix works for me. Regards, Bryan > > Regards, > Bryan > > > -- > > _______________________________________________ > > Openembedded-core mailing list > > Openembedded-core@lists.openembedded.org > > http://lists.openembedded.org/mailman/listinfo/openembedded-core > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-04-21 20:50 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-03-20 6:27 [PATCH 0/1] populate-volatile.sh: detect the change of configuration files Chen Qi 2015-03-20 6:27 ` [PATCH 1/1] " Chen Qi 2015-04-21 6:00 ` ChenQi 2015-04-21 12:34 ` Bryan Evenson 2015-04-21 20:50 ` Bryan Evenson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox