TransactionAwareBufferedWriter offers a number of optimization potentials. First it creates an unnecessary local, temporary char[] in write(char[], int, int). Second it does not overwrite any of the #write(String) methods leading to unnecessary intermediate copies. * avoid local, temporary char[] in #write(char[], int, int) * overwrite #write(String) methods to avoid copies Together these two changes should help to reduce allocation rate. Issue: #1166