From 46792ee164bf000204a159c62c429375dcc54678 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Thu, 1 Sep 2022 14:46:22 +0200 Subject: [PATCH] Clarify "job etag mismatch" situation When a submitted job is refused because of a mismatched etag, there is now a more explanatory error logged on the Manager. The website also has an entry in the FAQ for this, as I expect more people to run into this issue when they upgrade Flamenco. --- .gitignore | 1 + internal/manager/api_impl/jobs.go | 4 ++-- web/project-website/content/faq/_index.md | 7 +++++++ .../content/faq/job-types-refresh.webp | Bin 0 -> 3446 bytes 4 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 web/project-website/content/faq/job-types-refresh.webp diff --git a/.gitignore b/.gitignore index cd3ce97f..ddf8e997 100644 --- a/.gitignore +++ b/.gitignore @@ -33,6 +33,7 @@ __pycache__ web/manager-api/dist/ web/static/ web/project-website/public/ +web/project-website/resources/_gen/ /dist/ /tools/ diff --git a/internal/manager/api_impl/jobs.go b/internal/manager/api_impl/jobs.go index bda08fcd..b032f9c3 100644 --- a/internal/manager/api_impl/jobs.go +++ b/internal/manager/api_impl/jobs.go @@ -94,8 +94,8 @@ func (f *Flamenco) SubmitJob(e echo.Context) error { authoredJob, err := f.jobCompiler.Compile(ctx, submittedJob) switch { case errors.Is(err, job_compilers.ErrJobTypeBadEtag): - logger.Warn().Err(err).Msg("rejecting submitted job, job type etag does not match") - return sendAPIError(e, http.StatusPreconditionFailed, "rejecting job, job type etag does not match") + logger.Warn().Err(err).Msg("rejecting submitted job because its settings are outdated, refresh the job type") + return sendAPIError(e, http.StatusPreconditionFailed, "rejecting job because its settings are outdated, refresh the job type") case err != nil: logger.Warn().Err(err).Msg("error compiling job") // TODO: make this a more specific error object for this API call. diff --git a/web/project-website/content/faq/_index.md b/web/project-website/content/faq/_index.md index 0f1e123e..e13de260 100644 --- a/web/project-website/content/faq/_index.md +++ b/web/project-website/content/faq/_index.md @@ -6,6 +6,13 @@ weight: 30 This is a list of frequently asked questions, with their answers. It's by no means an exhaustive list. +## What do "Error: Cached job type is old" or "job type etag does not match" mean? + +This means that you have to click on the little "Refresh" icon next to the job type: + + + + ## ​What's the difference with OpenCue? OpenCue is aimed at a different audience than Flamenco. OpenCue is a large and diff --git a/web/project-website/content/faq/job-types-refresh.webp b/web/project-website/content/faq/job-types-refresh.webp new file mode 100644 index 0000000000000000000000000000000000000000..75e3d86f2240c7efdf8c17bc461a1f53506d89b0 GIT binary patch literal 3446 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 P%&X$!w7HmMa0K`#pD84F literal 0 HcmV?d00001