Another question regarding my wrapper for lmdb.

The comments say it's possible to reuse read only transactions but says nothing about reusing the read write transactions.  Does this mean every write operation needs a fresh transaction? Is there any downsides to not implementing the reuse functions for the wrapper? I figure the use case is quite limited and frankly I would have to manage all the transaction pointers to make sure they were being used property. 

Also I noticed that every call to mdb_txn_id returns 1 even for different transactions.  Is this normal?

Thanks.