code: func NewQueryServiceExecutor(logger *zap.Logger, svc query.QueryService, st backend.Store) backend.Executor {
  	return &queryServiceExecutor{logger: logger, svc: svc, st: st}
  }
docs: // NewQueryServiceExecutor returns a new executor based on the given QueryService.
  // In general, you should prefer NewAsyncQueryServiceExecutor, as that code is smaller and simpler,
  // because asynchronous queries are more in line with the Executor interface.