add waitable io transact partial