Tuesday, March 25, 2008

expiring messages

David had at some point wanted an optional "expires-after" header. What it would do is cause a message to be marked as "okay to delete" after a certain period of time. I guess most stores could ignore this header, but Complex in particular has a bugbear with this situation: if a message isn't persistent and someone has specified this header, then we would like to keep it until it expires (which means pushing it to the backstore, then deleting it after a certain time). This can be done by saying "does it have an expires-after thing? If so, persist it (at bump), and remember that you did, so you can clean it up later."

*vomits thoughts into blog*

Tuesday, March 11, 2008

stomp test

Let's see if POE::Filter::Stomp works with the latest released version of MQ, shall we?

Tuesday, March 4, 2008

MQ progress

After much blood and sweat, we now have fixed-size stores (with a unit test to prove that they work). All the other unit tests have been fixed, and there's a smoke-testy sort of "chuck a bunch of messages into the stores and try all or most of the storage functions on them" kind of test, so we have Good Testing Stuff (hopefully that will continue in future!). I might think about making a base test class that subclasses MooseX::POE and clean up some of the tests today, because they really all should be doing their testy things as POE events. I wonder how easy it'd be to add an attribute to a sub that says "make calls to this really be posts to this object's session." Hmm.mm.mm. Oh well, that's off in the blue sky. Cleaning up the tests a littl bit would be positive, anywho. And I'm pretty sure I don't have an explicit test in 05_storage_api for disown_all, and the only case where it's useful seems to be in a place where we're already looping destinations anyway...

Well, this got rambly quick! I'm going to need to ask David what we meant by a "cleanup cycle", but the bad-pump-bug seems to be mostly gone. I will fix it further by trying to make the storage-calling-code as callbacky as possible. Real $destinations all over the place is probably next on my list today. That's all!