class_docstr: A StreamAlert Athena Client for creating tables, databases, and executing queries
  
  Attributes:
      database: Athena database name where tables will be queried
class_docstr_tok: ["A","StreamAlert","Athena","Client","for","creating","tables",",","databases",",","and","executing","queries","Attributes",":","database",":","Athena","database","name","where","tables","will","be","queried"]
docstr: Iterate over all results returned by the Athena query. This is a blocking operation
  
  Args:
      query (str): SQL query to execute
  
  Yields:
      dict: Response objects with the results of the running query
  
  Raises:
      AthenaQueryExecutionError: If any failure occurs during the execution of the
          query, this exception will be raised
docstr_tok: ["Iterate","over","all","results","returned","by","the","Athena","query",".","This","is","a","blocking","operation","Args",":","query","(","str",")",":","SQL","query","to","execute","Yields",":","dict",":","Response","objects","with","the","results","of","the","running","query","Raises",":","AthenaQueryExecutionError",":","If","any","failure","occurs","during","the","execution","of","the","query",",","this","exception","will","be","raised"]
code: def query_result_paginator(self, query):
      """Iterate over all results returned by the Athena query. This is a blocking operation
  
      Args:
          query (str): SQL query to execute
  
      Yields:
          dict: Response objects with the results of the running query
  
      Raises:
          AthenaQueryExecutionError: If any failure occurs during the execution of the
              query, this exception will be raised
      """
      execution_id = self._execute_and_wait(query)
  
      paginator = self._client.get_paginator("get_query_results")
  
      result_iterator = paginator.paginate(
          QueryExecutionId=execution_id
      )
      for result in result_iterator:
          yield result
  
imports: from datetime import datetime
  import posixpath
  import backoff
  import boto3
  from botocore.exceptions import ClientError
  from streamalert.shared.backoff_handlers import backoff_handler, success_handler
  import streamalert.shared.helpers.boto
  from streamalert.shared.logger import get_logger
label_desc: Use image node_id 10 for calling the AthenaClient obj's underlying member method code with example usage: obj.query_result_paginator(query) without return types