Best Practices

The problem with serializing big objects is that serialization brings all sorts of huge problems down into DJs. For example serializing Procs is not possible.

Also it will cement the background queues to use the main db only. If we later want to handle more jobs and migrate to a lightweight queuing system, serializing big objects will make our lives difficult. You could argue that YAGNI, but in this case I find the change small enough.

What do you mean it will make your code uglier and testing harder? You will be able to see all the ids passed into the queue very easily and if you really need to know the state of the object you can just open the console and query it. How often does this happen?