samsondav / rihanna

Rihanna is a high performance postgres-backed job queue for Elixir
MIT License
439 stars 49 forks source link

Module and function name should be columns to enable fast searching #62

Open samsondav opened 5 years ago

samsondav commented 5 years ago

Module and function name should be columns to enable fast searching

tpitale commented 5 years ago

Do you want this in addition to the existing binary column? Or do you want that column to just be the serialized arguments going forward?

samsondav commented 5 years ago

Good question. It could be in addition... or replace it. Not sure yet.

satyavh commented 5 years ago

This is actually very needed. Looking at the db table, I missing this info. It's kind of a black box now.

I'd also loved to see the passed in args as separate column.

satyavh commented 5 years ago

Another thing I'd like to see is the results of the last run in case of rescheduling the job, e.g. {:ok, due_at: }. So a column called maybe done_at with a done timestamp, and done_reason where the reason is passed

And I'd like the jobs to stay in the database, as they are removed as soon as they return {:ok, reason}. At least an config option for keeping the job records in the db.

tpitale commented 5 years ago

Rather than new columns for mod/fun, it might be possible to have a json column as an optional storage for the serialized term. By default it would remain erlang serialized binary.