docs: def searchQueryAll(self, *args, **kwargs):
          """
          Experimental Method
  
          Execute a Search query, retrieving all rows.
  
          This method returns a :class:`Deferred` object which is executed
          with a :class:`~.SearchRequest` object. The object may be iterated
          over to yield the rows in the result set.
  
          This method is similar to :meth:`~couchbase.bucket.Bucket.search`
          in its arguments.
  
          Example::
  
              def handler(req):
                  for row in req:
                      # ... handle row
  
              d = cb.search('name', ft.MatchQuery('nosql'), limit=10)
              d.addCallback(handler)
  
          :return: A :class:`Deferred`
  
          .. seealso:: :meth:`~couchbase.bucket.Bucket.search`
          """
  
          if not self.connected:
              cb = lambda x: self.searchQueryAll(*args, **kwargs)
              return self.connect().addCallback(cb)
  
          kwargs['itercls'] = BatchedSearchRequest
          o = super(AsyncBucket, self).search(*args, **kwargs)
          o.start()
          return o._getDeferred()