recompute data in transaction