Currently the systest TimeToLiveTest fails on the Java profile as some of the messages sent with a TTL value are expected to time out and the test does not account for the situation when they have not.
An improvement to the test would be to ensure that not all of the messages are recevied as that would signify that TTL is actually broken in the server.
A little further investigation into why some of the messages are returning would also be useful.
Currently the test sends messages with a TTL of 100ms in a transaction. After the commit (so the broker definitely has the messages) it waits 100ms then starts the consumer, yet some of the messages have not been expired by the Java broker.