fix bug-1060 bug-1067
This commit is contained in:
parent
6067ba6c94
commit
61e1391cd0
28 changed files with 7021 additions and 2926 deletions
|
|
@ -14,6 +14,7 @@
|
|||
|
||||
#include "config.h" /* WAL_HDR_CRC_SIZE, WAL_CRC_NONE, MAX_WAL_PAYLOAD_BYTES */
|
||||
#include "controller.capnp.h" /* Job decode for WAL_JOB_SUBMIT */
|
||||
#include "utils.h" /* fmt_jobid — human-readable JobId formatting */
|
||||
#include "wal_types.h"
|
||||
|
||||
#define WAL_SEG_FMT "%s/seg-%016" PRIx64 ".wal"
|
||||
|
|
@ -303,8 +304,9 @@ static void scan_segment(const char* seg_path, FILE* out,
|
|||
}
|
||||
}
|
||||
|
||||
/* Per-entry line, with jobid/subtime for submits. */
|
||||
char info[96] = "";
|
||||
/* Per-entry line, with jobid/subtime for submits. Sized to hold the
|
||||
* formatted JobId (fmt_jobid, up to ~40 chars) + subtime + state. */
|
||||
char info[192] = "";
|
||||
int is_dup = 0;
|
||||
int dup_identical = 0;
|
||||
if (hdr.type == WAL_JOB_SUBMIT) {
|
||||
|
|
@ -312,9 +314,16 @@ static void scan_segment(const char* seg_path, FILE* out,
|
|||
uint64_t jobid = 0;
|
||||
if (decode_submit_info(payload, hdr.payload_len, &si) == 0) {
|
||||
jobid = si.jobid;
|
||||
/* Render the JobId in the same human-readable form the client
|
||||
* (joblist / jobsub) prints — fmt_jobid (utils.c) — so a waldump
|
||||
* jobid can be eyeballed against an `expect-job <id>` / joblist
|
||||
* entry without converting the raw uint64. */
|
||||
char jidStr[128];
|
||||
if (fmt_jobid(jidStr, sizeof(jidStr), si.jobid) < 0)
|
||||
snprintf(jidStr, sizeof(jidStr), "%" PRIu64, si.jobid);
|
||||
snprintf(info, sizeof(info),
|
||||
"jobid=%" PRIu64 " subtime=%" PRIu64 " state=%u",
|
||||
si.jobid, si.subtime, si.state);
|
||||
"jobid=%s subtime=%" PRIu64 " state=%u",
|
||||
jidStr, si.subtime, si.state);
|
||||
} else {
|
||||
snprintf(info, sizeof(info), "jobid=?");
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue