In more detail:
As far as I know, ConcurrentHashMap does not make any statement about the order of the elements. Two Phase Locking relies on the order of locks to avoid dead locks. Thus, if you have many concurrent processes on the same variables and you use a non ordered map for log, you may experience dead locks. Furthermore, if you use ConcurrentHashMap, you have overhead for synchronization, as the TransactionLog does not need to be synchronized because it is thread local. The methods of the TransactionLog will never be called concurrently.
Sorry for the long delay and the first sketchy answer.