If the metadata is updated, that update should ignore the running transaction.  In particular, it should not be rolled back if WT_SESSION::rollback_transaction is called.
Use the whole buffer for config strings: we just calculated the length we need.