CreateOrOpenInternalAsync's contract allows readTrans to be null