doc(bkgpslog):Update plan doc
[EVA-2020-02.git] / exec / bkgpslog-plan.org
index bc98f9ae67d56901c1c41d5a8429d0bfd5805ec1..da2370480f66ea57868de63f228bd2a69bd49ae2 100644 (file)
@@ -1,3 +1,37 @@
+* bkgpslog task list
+** DONE Add job control for short buffer length
+   CLOSED: [2020-07-02 Thu 16:04]
+2020-07-02T14:56Z; bktei> File write operations were bundled into a
+magicWriteBuffer function that is called then detached from the script
+shell (job control), but the detached job is not tracked by the main
+script. A problem may arise if two instances of magicWriteBuffer
+attempt to write to the same tar simultaneously. Two instances of
+magicWriteBuffer may exist if the buffer length is low (ex: 1 second);
+the default buffer length of 60 seconds should reduce the probability
+of a collision but it should be possible for the main script to track
+the process ID of a magicWriteBuffer() as soon as it detaches and then
+checking (via ~$!~ as described [[https://bashitout.com/2013/05/18/Ampersands-on-the-command-line.html][here]]) that the process is still alive.
+2020-07-02T15:23Z; bktei> I found that the Bash ~wait~ built-in can be
+used to delay processing until a specified job completes. The ~wait~
+command will pause script execution until all backgrounded processes
+complete.
+2020-07-02T16:03Z; bktei> Added ~wait~.
+** DONE Rewrite tar initialization function
+   CLOSED: [2020-07-02 Thu 17:23]
+2020-07-02T17:23Z; bktei> Simplify tar initialization function so
+VERSION file is used to test appendability of tar as well as to mark
+when a new session is started.
+** DONE Consolidate tar checking/creation into function
+   CLOSED: [2020-07-02 Thu 18:33]
+2020-07-02T18:33Z; bktei> Simplify how the output tar file's existence
+is checked and its status as a valid tar file is validated. This was
+done using a new function ~checkMakeTar~.
+** DONE Add VERSION if output tar deleted between writes
+   CLOSED: [2020-07-02 Thu 20:22]
+2020-07-02T20:21Z; bktei> Added bkgpslog-specified function
+magicWriteVersion() to be called whenever a new time-stamped ~VERSION~
+file needs to be generated and appended to the output tar file
+~PATHOUT_TAR~.
 * bkgpslog narrative
 ** Initialize environment
 *** Init variables
 * bkgpslog narrative
 ** Initialize environment
 *** Init variables