I think if I were going to argue against using DBs as queues it would be around: heavy parallel write use cases, latency concerns of both reads/writes and scaling to millions of events per second.
If you don’t have those concerns using a properly normalized and protected schema (which you are doing anyway right? Cause if not you are already shooting your toes off) for queues goes a very long way and removes a very big operational burden and tons of failure modes.
Going from a single database to a (database + queue) means two server processes to manage, maintain, observe, test etc.
I actually start with SQLite to reduce as much distributed state as possible, then move to something else once it’s proven it will not work.
To clarify we just moved this entire problem to SQS.