Many Thanks to Daniel for identifying this problem at the thread: https://groups.google.com/forum/#!topic/xadisk/oJBK47CiyJM.
A transactions complete, there is a check to see if the logs they are using are not used by any other ongoing transaction. If so, such logs is deleted. Due to incomplete tracking of the log usage, this was not working as expected.
Also, if a completing transaction was the last remaining transaction in the current log, and when any further log request ends up creating a new log, the last log can remain undeleted. We need to take care of this too.