Documentation Oracle Transport for Rebus is nonexistent

Viewed 50

I'm currently working on a project where we use Rebus as a message queue for an Oracle11g database. A forked project is used and queue message cleanup was broken. I was looking for some more documentation on how messages are removed after a set period of time (to see if there is some misconfiguration going on). A link in the Rebus Oracle repository https://mookid.dk/category/rebus was sadly broken. Might there be another place where the documentation is stored?

1 Answers

I still haven't found any documentation on the Rebus Oracle project but the issue I had was solved. The default time to live value for each message in the queue is 100 years. Since Oracle SQL Developer only shows the last two digits of a year, it was easy to misread the expiration column which is queried to remove old messages. To set a different time to live value for each message, the TimeToBeReceived header should be added when a message is published to the rebus bus:

await _bus.Publish(message, new Dictionary<string, string>
   {
      { Headers.TimeToBeReceived,"10:00:00"} // hh:MM:ss format
   });
Related