Dessa Simpson dxs
dxs deleted branch cron from dxs/learn-request-queue 2020-11-29 19:28:01 +00:00
dxs pushed to master at dxs/learn-request-queue 2020-11-29 08:24:41 +00:00
8dc7475a85 Remove extraneous whitespace
dxs pushed to master at dxs/learn-request-queue 2020-11-29 08:18:00 +00:00
281541faf5 Make processBans support pagination
dxs closed issue dxs/learn-request-queue#22 2020-11-29 06:27:35 +00:00
Implement cronjob system
dxs pushed to master at dxs/learn-request-queue 2020-11-29 06:27:35 +00:00
d2d99ffb02 Implement cron
dxs pushed to master at dxs/learn-request-queue 2020-11-29 06:27:19 +00:00
4315d0ad7b Add ISO date to logging
196b5f7882 Shorten container names in docker-compose.yml
Compare 2 commits »
dxs pushed to cron at dxs/learn-request-queue 2020-11-29 06:27:10 +00:00
d2d99ffb02 Implement cron
4315d0ad7b Add ISO date to logging
196b5f7882 Shorten container names in docker-compose.yml
Compare 3 commits »
dxs opened issue dxs/learn-request-queue#25 2020-11-28 18:35:41 +00:00
Allow manual triggering by streamer of streamer-specific cronjobs
dxs commented on issue dxs/learn-request-queue#22 2020-11-28 18:31:46 +00:00
Implement cronjob system

Updated version:

CREATE TABLE cron (
    id integer GENERATED ALWAYS AS IDENTITY,
    name varchar NOT NULL, -- Application-recognizable name for the job
    runinterval interval, -- Duration between runs
    lastSuccess timestamptz -- Last successful run - only gets updated if run is successful
);

BEGIN; -- Transaction necessary for locking
SELECT * FROM cron
  WHERE (lastSuccess + runInterval) < now() -- Next run should be before now
  AND name = 'jobName' -- Application will iterate through jobs it knows about, specifying job name in query
  FOR UPDATE SKIP LOCKED; -- Lock row, do not include rows currently locked
-- If no rows returned by select, either no pending jobs or all pending jobs are already being handled. Either way, nothing to do, so application subroutine should exit
COMMIT;

Changes from app saying "give me a job to do" to "does this job need done?". This way, the application will never get a job it doesn't know how to handle, and will guarantee all jobs that need to get run do so in one cron cycle.

dxs opened issue dxs/learn-request-queue#24 2020-11-27 19:04:08 +00:00
Ordering not consistent
dxs commented on issue dxs/learn-request-queue#22 2020-11-13 04:42:30 +00:00
Implement cronjob system
CREATE TABLE cron (
    id integer GENERATED ALWAYS AS IDENTITY,
    name varchar NOT NULL, -- Application-recognizable name for the job
    runinterval interval, -- Duration between runs
    lastSuccess timestamptz -- Last successful run - only gets updated if run is successful
);

BEGIN; -- Transaction necessary for locking
SELECT * FROM cron
  WHERE (lastSuccess + runInterval) < now() -- Next run should be before now
  FOR UPDATE SKIP LOCKED LIMIT 1; -- Lock one not-already-locked row
-- If no rows returned by select, either no pending jobs or all pending jobs are already being handled. Either way, nothing to do, so application subroutine should exit
COMMIT;

dxs commented on issue dxs/learn-request-queue#22 2020-11-13 03:34:43 +00:00
Implement cronjob system

Functions that need this:

  • Bans
  • Updating empty metadata
  • Retrieving followers and subscribers
dxs pushed to cron at dxs/learn-request-queue 2020-11-13 03:22:19 +00:00
dxs pushed to master at dxs/learn-request-queue 2020-11-10 23:53:06 +00:00
ef8f2312fe Add prod dockerfile
1e78a52605 Add prod dockerfile
Compare 2 commits »
dxs pushed to master at dxs/learn-request-queue 2020-11-10 23:51:30 +00:00
1e78a52605 Add prod dockerfile
dxs pushed to master at dxs/learn-request-queue 2020-11-10 22:18:41 +00:00
62fbf179a6 Bump version to 0.2.1
77890ec1ad Make streamer name and profile picture in navbar link to twitch page
Compare 2 commits »
dxs deleted tag v0.2.0 from dxs/learn-request-queue 2020-11-10 22:13:12 +00:00
dxs deleted tag v0.1.0 from dxs/learn-request-queue 2020-11-10 22:13:09 +00:00
dxs pushed tag v0.2.1 to dxs/learn-request-queue 2020-11-10 22:11:02 +00:00
dxs pushed tag v0.2.0 to dxs/learn-request-queue 2020-11-10 22:11:02 +00:00