annotate sql/job-todo.sql @ 6:8c408176d2b1

scid: past jobs are not listed for new workers
author David Demelier <markand@malikania.fr>
date Wed, 23 Jun 2021 11:44:30 +0200
parents 9c4fea43803c
children de4bf839b565
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
1 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
2 -- job-todo.sql -- list jobs to perform for a worker
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
3 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
4 -- Copyright (c) 2021 David Demelier <markand@malikania.fr>
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
5 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
6 -- Permission to use, copy, modify, and/or distribute this software for any
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
7 -- purpose with or without fee is hereby granted, provided that the above
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
8 -- copyright notice and this permission notice appear in all copies.
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
9 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
10 -- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
11 -- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
12 -- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
13 -- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
14 -- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
15 -- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
16 -- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
17 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
18
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
19 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
20 -- This request won't list jobs that were created before the worker itself
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
21 -- otherwise when adding a new worker it would need to run potentially a very
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
22 -- high number of jobs
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
23 --
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
24 SELECT job.id
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
25 , job.tag
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
26 , job.project_id
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
27 FROM job
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
28 WHERE job.id
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
29 NOT IN (
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
30 SELECT jobresult.job_id
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
31 FROM jobresult
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
32 WHERE jobresult.worker_id = ?
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
33 )
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
34 AND job.date >= (
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
35 SELECT worker.date
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
36 FROM worker
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
37 WHERE worker.id = ?
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
38 )
8c408176d2b1 scid: past jobs are not listed for new workers
David Demelier <markand@malikania.fr>
parents: 4
diff changeset
39 LIMIT ?