SDP-574 #7

  • //
  • spec/
  • job/
  • SDP-574
  • View
  • Commits
  • Open Download .zip Download (4 KB)
# The form data below was edited by swarm-user
# Perforce Workshop Jobs
#
#  Job:           The job name. 'new' generates a sequenced job number.
#
#  Status:        Job status; required field.  There is no enforced or
#                 promoted workflow for transition of jobs from one
#                 status to another, just a set of job status values
#                 for users to apply as they see fit.  Possible values:
#
#                 open - Issue is available to be worked on.
#
#                 inprogress - Active development is in progress.
#
#                 blocked - Issue cannot be implemented for some reason.
#
#                 fixed - Fixed, optional status to use before closed.
#                 
#                 closed - Issue has been dealt with definitively.
#
#                 punted - Decision made not to address the issue,
#                    possibly not ever.
#
#                 suspended - Decision made not to address the issue
#                    in the immediate future, but noting that it may
#                    have some merit and may be revisited later.
#
#                 duplicate - Duplicate of another issue that.
#
#                 obsolete - The need behind the request has become
#                    overcome by events.
#
#  Project:       The project this job is for. Required.
#
#  Severity:      [A/B/C] (A is highest)  Required.
#
#  ReportedBy     The user who created the job. Can be changed.
#
#  ReportedDate:  The date the job was created.  Automatic.
#
#  ModifiedBy:    The user who last modified this job. Automatic.
#
#  ModifiedDate:  The date this job was last modified. Automatic.
#
#  OwnedBy:       The owner, responsible for doing the job. Optional.
#
#  Description:   Description of the job.  Required.
#
#  DevNotes:      Developer's comments.  Optional.  Can be used to
#                 explain a status, e.g. for blocked, punted,
#                 obsolete or duplicate jobs.  May also provide
#                 additional information such as the earliest release
#                 in which a bug is known to exist.
#
# Component:      Projects may use this optional field to indicate
#                 which component of the project a givenjob is associated
#                 with.
#
#                 For the SDP, the list of components is defined in:
#                 //guest/perforce_software/sdp/tools/components.txt
#
#  Type:          Type of job [Bug/Feature].  Required.
#
#  Release:       Release in which job is intended to be fixed.

Job:	SDP-574

Status:	closed

Project:	perforce-software-sdp

Severity:	A

ReportedBy:	roadkills_r_us

ReportedDate:	2020/12/15 11:20:01

ModifiedBy:	swarm-user

ModifiedDate:	2021/01/14 19:13:45

OwnedBy:	tom_tyler

Description:
	daily_checkpoint.sh hangs if journalPrefix is wrong.
	
	Detail: The truncate_journal() in backup_functions.sh hangs if
	journalPrefix is misconfigured.
	
	There is a logic block in truncate_journal that is intended to wait
	for a 'p4 -p $P4MASTERPORT admin journal' to fully complete processing
	before the function returns. It does so by waiting for the numbered
	journal file to appear in the checkpoints folder.  This works as
	intended when the journalPrefix is correct.
	
	However, if the journalPrefix is wrong, the wait loop still occurs,
	causing a hang waiting forever for a journal file that is never going
	to appear.

DevNotes:
	2021/01/12 ttyler:
	Updated job title line and description based on a new understanding of
	the problem.
	
	2020/12/15 ttyler:
	An obvious fix should be to make the 'wait' loop occur only if the
	journal rotation returns a happy zero exit code.
	
	Digging deeper: Research to confirm that we really need the wait loop
	at all. Is the 'p4 admin journal' just to request a journal rotation
	be started, or does the return of the command guarantee that the
	rotated journal file has landed in the checkpoints folder.

Component:	core-unix

Type:	Bug
# Change User Description Committed
#7 default
#6 default
#5 default
#4 default
#3 default
#2 default
#1 default