code: def _next_with_retry(self):
          
          if self._cursor is None:
              self._create_cursor()
  
          try:
              return self._cursor.next()
          except CursorNotFound:
              self._cursor.close()
              self._create_cursor()
              return self._cursor.next()
docs: Return the next chunk and retry once on CursorNotFound.
  
          We retry on CursorNotFound to maintain backwards compatibility in
          cases where two calls to read occur more than 10 minutes apart (the
          server's default cursor timeout).