code: func (d *txDependency) waitForAndRetrieveValidationResult(ns string) error {
  	d.mutex.Lock()
  	defer d.mutex.Unlock()
  
  	err, ok := d.validationResultMap[ns]
  	if ok {
  		return err
  	}
  
  	for !ok {
  		d.cond.Wait()
  		err, ok = d.validationResultMap[ns]
  	}
  
  	return err
  }
docs: // waitForAndRetrieveValidationResult returns the validation results
  // for namespace `ns` - possibly waiting for the corresponding call
  // to signalValidationResult to finish first.