[wpkg-users] [Bug 142] New: Improved journaling of installs.

bugzilla-daemon at bugzilla.wpkg.org bugzilla-daemon at bugzilla.wpkg.org
Sat Apr 11 19:57:52 CEST 2009


http://bugzilla.wpkg.org/show_bug.cgi?id=142

           Summary: Improved journaling of installs.
           Product: WPKG
           Version: 1.1.x-M
          Platform: PC
        OS/Version: Windows XP
            Status: ASSIGNED
          Severity: enhancement
          Priority: P2
         Component: wpkg.js
        AssignedTo: mangoo at wpkg.org
        ReportedBy: k.e.jones at brighton.ac.uk
         QAContact: wpkg-users at lists.wpkg.org
                CC: r.meier at wpkg.org



Rainer Meier <r.meier at wpkg.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |r.meier at wpkg.org
             Status|NEW                         |ASSIGNED


Hi,

 Having made a complete pigs ear of an install recently, I noticed that WPKG
doesn't update the settings file until it thinks it's totally finished.

 I stupidly forgot to check a package for reboot behaviour and part way through
deploying it rebooted WPKG. The end result was a bunch of machines still
cycling through an install-reboot-install-reboot when I got in in the morning.
Doh!

 Although it's not going to be possible to prevent stupid administrator errors
like that, it might be possible to make it more manageable.

 As the settings don't get updated until WPKG ends it's run, preceeding
packages aren't added to the settings file either so they can end up joining in
the fun :-)

 I'll try and add some code later but I would propose;

 a) Having WPKG save the settings file as soon as a new node is added to the
settings array to increase overall journalling. (Easy patch I hope)

 -- This should help handle the preceeding packages retrying.

 b) Investigation into methods to journal the current install. (A lot more
work)

 -- The easiest method I can think of is to persist the current package node to
a temporary file with a retry count stored with it. WPKG would need to look for
that temporary file before proceeding with an install and check the retry count
to see if it's caught in a loop.
 -- Alternatively you could do the same but within the settings file itself.
That might need a bit more "tinkering" to work well.

 Back shortly with at least one patch ;-)

Keith


--- Comment #1 from Rainer Meier <r.meier at wpkg.org>  2009-04-11 19:57:45 ---
The behavior of WPKG to save wpkg.xml only on successful finish is intentional.
All package operations (typically synchronization) should be done as an atomic
operation. Saving them incrementally not only requires more performance and
usually leads to unwanted disk writes but is not required in theory. WPKG never
stops processing unless it correctly finishes. The worst thing which can happen
is that a command takes extremely long (standard command timeout is 1 hour) and
the user shuts down the machine before WPKG finishes. But still this is not a
problem for WPKG.
The next time WPKG is run it will (on package installation) verify if the
package is already installed, if it is, then it's immediately added to wpkg.xml
(well, the internal wpkg.xml structure). So no re-installation takes place if
you correctly specify appropriate checks in your packages.


-- 
Configure bugmail: http://bugzilla.wpkg.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.



More information about the wpkg-users mailing list