river
river copied to clipboard
Fast and reliable background jobs in Go
we have some jobs that take 1-2 minutes, and other jobs that takes at most 5 seconds, and so we set worker timeouts accordingly however, we can't configure RescueStuckJobsAfter for...
Here, implement the rest of driver functionality on `riverdatabasesql`, the existing driver for Go's built-in `database/sql` package. Previously it only supported a minimal interface allowing it to run migrations, but...
Building on #351, this PR allows users to take advantage of the new `riverdatabasesql` driver while also keeping full support for `LISTEN` and avoiding poll-only mode. This is accomplished through...
Hi, great project! I'm looking at using this to replace [Asynq](https://github.com/hibiken/asynq) in my application and remove the Redis dependency. I'm wondering how I can integrate this with [Gorm](https://gorm.io/) and insert...
I have a project with bun sql and I would like to insert a job as part of a transaction, but I can only use pgx.Tx transactions. Also I can...
I think we implemented this after your time at Heroku. We finally realized that sometimes the 2 PG auto vacuum processes would both end up working on tables that were...
For example, using a `cron.ParseStandard("CRON_TZ=UTC 39 * * * *")` (this is `github.com/robfig/cron/v3`, see code below) my schedule func returned `2024-05-06T18:39:00.000Z` but the `scheduled_at` on the job is `2024-05-06T18:39:00.000609Z`. ##...
so I can't seem to find a way to use poll only mode with a custom search path behind pgbouncer/similar in transaction pooling mode. the recommendation I have read is...
i was wondering if it was possible to register a slice of workers. currently the pattern is to create a "Workers" object, then use generic function ``` func AddWorkerSafely[T JobArgs](workers...
Hi, just wanted to share some data on our measured impact of the new notification system on the job completion duration:  We're observing a roughly 400% increase at p90...