Laura Hausmann
19c9b7bf90
[backend/database] Add StackTrace column to Job table
2024-06-21 14:05:34 +02:00
Laura Hausmann
47ab95cc1b
[backend/queue] Remove trace logging
2024-06-16 21:56:56 +02:00
Laura Hausmann
8ebef17938
[backend/queue] Fix race condition that could cause temporary queue stalls (until a new job gets queued)
2024-06-16 19:06:53 +02:00
Laura Hausmann
571ef8f027
[backend/queue] Improve logging
2024-06-16 18:55:54 +02:00
Laura Hausmann
07fd0260a8
[backend/queue] Add healthchecks that regularly check for stalled jobs (ISH-361)
2024-06-16 18:07:25 +02:00
Laura Hausmann
7ed39d0c47
[backend/queue] Fix AsyncAutoResetEvent handling, fix stalled queue workers causing no new workers to be spawned
2024-06-16 17:23:28 +02:00
Laura Hausmann
35148d7796
[backend/queue] Add queue processor timeout
...
For now this is hardcoded per queue, but this will be configurable down the line.
2024-06-13 22:41:41 +02:00
Laura Hausmann
aa21e4b05a
[backend/queue] Make queue concurrency configurable
2024-06-10 18:18:39 +02:00
Laura Hausmann
9949e24c8d
[backend] Miscellaneous refactors
2024-05-28 20:50:04 +02:00
Laura Hausmann
e77c768882
[backend/database] Switch job identifier generation scheme to from UUIDv4 to ULID
2024-05-27 22:11:18 +02:00
Laura Hausmann
35153a9080
[backend/queue] Improved AsyncAutoResetEvent implementation
...
This implementation improves the memory behavior of AsyncAutoResetEvents that fire in rapid succession.
2024-05-25 13:34:06 +02:00
Laura Hausmann
ba21cb2b0e
[backend/queue] Fix race condition that could cause PostgresJobQueue.ExecuteAsync to fail when actualParallelism is negative
2024-05-22 23:47:09 +02:00
Laura Hausmann
97532c2b22
[backend/queue] Clean completed jobs in a cron task instead of doing it at job completion
...
This prevents database deadlocks that can occur when many jobs are being processed simultaneously.
2024-05-14 15:05:01 +02:00
Laura Hausmann
363b0c930c
[backend/core] Add Guid.ToStringLower() extension method
2024-04-25 18:26:42 +02:00
Laura Hausmann
c25b613376
[backend/queue] Improve logging
2024-04-15 18:00:11 +02:00
Laura Hausmann
8fb7c8a93e
[backend/queue] Clear change tracker before saving the job state
...
This prevents a queue worker stall when a job fails to execute due to a database exception (leaving unsaved changes in the DbContext change tracker, preventing the job status from being set as failed)
2024-04-15 17:48:36 +02:00
Laura Hausmann
c5bd380344
[backend] Improved debug logging (ISH-238)
2024-04-10 00:15:46 +02:00
Laura Hausmann
60545e25ae
[backend/core] Fix sporadic "key not found" background task failures
2024-04-07 21:37:46 +02:00
Laura Hausmann
abf92b8ea5
[backend/queue] Increase heartbeat grace period from 15s to 60s
2024-03-28 13:21:51 +01:00
Laura Hausmann
d9ba6159f2
[backend/queue] Use C# events when not running multiple workers (ISH-234)
2024-03-26 17:54:31 +01:00
Laura Hausmann
f24c7dff08
[backend/database] Move queue job queries into DatabaseContext
2024-03-26 17:35:20 +01:00
Laura Hausmann
c235f1a586
[backend/queue] Check for correct heartbeat interval
2024-03-26 17:23:37 +01:00
Laura Hausmann
a4ae25d5f3
[backend/queue] Initial clustering support (ISH-141, ISH-220)
2024-03-26 17:08:43 +01:00
Laura Hausmann
9d5d3e935e
[backend/queue] Improved shutdown process (ISH-220)
2024-03-26 15:07:53 +01:00
Laura Hausmann
5556832de0
[backend/core] Fix queue system logging rendering UTC timestamps & reporting of incorrect duration for delayed jobs due to time zone differences
2024-03-26 12:11:29 +01:00
Laura Hausmann
7eba307d0a
[backend/core] Call RaiseJobQueuedEvent in QueueService.DelayedJobsHandler (ISH-229)
2024-03-26 12:10:16 +01:00
Laura Hausmann
a67fe3722d
[backend] Code cleanup
2024-03-24 14:17:02 +01:00
Laura Hausmann
c02b2bd34c
[backend/core] Improve handling of explicit service scopes & event logic
2024-03-24 14:13:51 +01:00
Laura Hausmann
5a53fd1698
[backend/core] Remove QueueService TODO item
2024-03-24 13:39:00 +01:00
Laura Hausmann
188a6f4251
[backend/core] Fix NullReferenceException
2024-03-24 00:25:27 +01:00
Laura Hausmann
9698e3d36d
[backend/core] Replace redis-based queue system with a postgres-based one (ISH-212)
2024-03-24 00:17:28 +01:00
Laura Hausmann
f4705f5c9e
[backend/queue] Fix handling of delayed jobs (ISH-137)
2024-03-07 04:01:30 +01:00
Laura Hausmann
657bc43761
[backend/core] Finish the polls implementation (ISH-130, ISH-131)
2024-03-07 03:34:52 +01:00
Laura Hausmann
9de208b49b
[backend/federation] Initial poll support (ISH-62)
2024-03-06 00:55:53 +01:00
Laura Hausmann
f895a9e541
[backend/federation] Correctly serialize value types
2024-02-22 19:06:53 +01:00
Laura Hausmann
907f7ed55c
[backend] Code cleanup
2024-02-20 19:59:38 +01:00
Laura Hausmann
cbd4b576e2
[backend/core] Don't log queue service exception on application exit
2024-02-20 01:42:29 +01:00
Laura Hausmann
d976f82636
[backend/core] Delayed queue handling (ISH-86)
2024-02-19 23:27:12 +01:00
Laura Hausmann
d4e1d92771
[backend] Code cleanup: switch to BSD braces style, tweak code style
2024-02-17 02:31:00 +01:00
Laura Hausmann
11caf32ebb
[backend/services] Media cleanup cron task (ISH-66, ISH-27)
2024-02-16 01:21:04 +01:00
Laura Hausmann
71d8b28d28
[backend/federation] Deliver activities in the background
2024-02-15 20:10:07 +01:00
Laura Hausmann
920997ec41
[backend/federation] Avatar & banner support (ISH-8)
2024-02-09 23:22:46 +01:00
Laura Hausmann
b0cae8a6f2
[backend] Don't reorder properties with [ProtoContract] or [ProtoMember] attributes
2024-02-06 21:52:08 +01:00
Laura Hausmann
f099d6ad41
[backend/queue] Fix deliver queue proto contract
2024-02-06 21:41:58 +01:00
Laura Hausmann
333ef6f7cd
[backend] Improve logging for unknown activity types
2024-02-06 20:58:43 +01:00
Laura Hausmann
f4a584b46a
Methods that return a non-generic Task should also end in Async
2024-01-28 22:29:09 +01:00
Laura Hausmann
3c95f4a0e3
Significantly more powerful queue system
2024-01-28 22:04:53 +01:00
Laura Hausmann
e4211fde56
Outgoing federation
2024-01-27 01:18:21 +01:00
Laura Hausmann
e72a25db3c
Clean up unused references
2024-01-25 03:46:11 +01:00
Laura Hausmann
7f8d2e2012
Improve QueueService
2024-01-25 03:29:15 +01:00