From ca4d34234d90ade1dfc8f29d495937383c05080f Mon Sep 17 00:00:00 2001
From: Julian Rother <julianr@fsmpi.rwth-aachen.de>
Date: Tue, 5 Dec 2017 02:07:39 +0100
Subject: [PATCH] Moved the first job ping to the earliest point possible

---
 probe.c         | 2 +-
 publish_video.c | 2 +-
 remux.c         | 2 +-
 thumbnail.c     | 2 +-
 transcode.c     | 3 ++-
 5 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/probe.c b/probe.c
index 7866807..2d19b7a 100644
--- a/probe.c
+++ b/probe.c
@@ -74,11 +74,11 @@ int main(int argc, char *argv[])
 	init_avlogbuf();
 
 	jobid = atoi(argv[1]);
+	ping_job(jobid, "running", 0);
 	if (!strcmp(argv[2], "probe-raw"))
 		path = buildpath(getenv(WORKER_RAW), jstr(jlookup(argv[4], "path"), 0));
 	else
 		path = buildpath(getenv(WORKER_RELEASED), jstr(jlookup(argv[4], "path"), 0));
-	ping_job(jobid, "running", 0);
 
 	opts = 0;
 	av_dict_set_int(&opts, "export_xmp", 1, 0); /* Ignored if not supported */
diff --git a/publish_video.c b/publish_video.c
index 3ef95b8..dfad67b 100644
--- a/publish_video.c
+++ b/publish_video.c
@@ -13,10 +13,10 @@ int main(int argc, char *argv[])
 	init_env();
 	init_avlogbuf();
 	jobid = atoi(argv[1]);
+	ping_job(jobid, "running", 0);
 	src = buildpath(getenv(WORKER_TMP), jstr(jlookup(argv[4], "source"), 0));
 	dest = buildpath(getenv(WORKER_RELEASED), jstr(jlookup(argv[4], "path"), 0));
 	destdir = dirname(mprintf("%s/%s", getenv(WORKER_RELEASED), jstr(jlookup(argv[4], "path"), "")));
-	ping_job(jobid, "running", 0);
 	overwrite_check(dest, 0, 0);
 	if (mkdir(destdir, 02775) && errno != EEXIST)
 		job_failed("Could not create target directory \"%s\": %s", destdir, strerror(errno));
diff --git a/remux.c b/remux.c
index 725c680..3572a80 100644
--- a/remux.c
+++ b/remux.c
@@ -21,11 +21,11 @@ int main(int argc, char *argv[])
 	av_init_packet(&pkt);
 
 	jobid = atoi(argv[1]);
+	ping_job(jobid, "running", 0);
 	path = buildpath(getenv(WORKER_RELEASED), jstr(jlookup(argv[4], "path"), 0));
 	srcpath = buildpath(getenv(WORKER_RAW), jstr(jlookup(argv[4], "srcpath"), 0));
 	tmp = mprintf("%s/.tmp-%i", getenv(WORKER_TMP), jobid);
 	overwrite_check(path, srcpath, jstr(jlookup(argv[4], "srchash"), ""));
-	ping_job(jobid, "running", 0);
 
 	demux = 0;
 	if (err = avformat_open_input(&demux, path, 0, 0))
diff --git a/thumbnail.c b/thumbnail.c
index 720a036..b1e0116 100644
--- a/thumbnail.c
+++ b/thumbnail.c
@@ -37,11 +37,11 @@ int main(int argc, char *argv[])
 
 	/* Prepare arguments */
 	jobid = atoi(argv[1]);
+	ping_job(jobid, "running", 0);
 	src = buildpath(getenv(WORKER_RELEASED), jstr(jlookup(argv[4], "path"), 0));
 	tmp = mprintf("%s/.tmp-%i", getenv(WORKER_TMP), jobid);
 	dest = mprintf("%s/thumbnail/l_%s.jpg", getenv(WORKER_RELEASED),
 			jstr(jlookup(argv[4], "lectureid"), "0"));
-	ping_job(jobid, "running", 0);
 
 	/* Open src */
 	demux = 0;
diff --git a/transcode.c b/transcode.c
index b01cbe7..e95fc39 100644
--- a/transcode.c
+++ b/transcode.c
@@ -269,6 +269,7 @@ int main(int argc, char *argv[])
 		return 99;
 
 	jobid = atoi(argv[1]);
+	ping_job(jobid, "running", 0);
 	input = jlookup(argv[4], "input");
 	inpath = buildpath(getenv(WORKER_RAW), jstr(jlookup(input, "path"), 0));
 	output = jlookup(argv[4], "output");
@@ -321,8 +322,8 @@ int main(int argc, char *argv[])
 	assert_empty_opts(opts);
 
 	progress = 0;
-	ping_job(jobid, "running", 0);
 
+	ping_job(jobid, "running", 0);
 	while (!av_read_frame(demux, &pkt))
 	{
 		i = pkt.stream_index;
-- 
GitLab