<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def execute(self, operation, parameters=None, configuration=None):
 """Synchronously execute a SQL query. Blocks until results are available. Parameters operation : str The SQL query to execute. parameters : str, optional Parameters to be bound to variables in the SQL query, if any. Impyla supports all DB API `paramstyle`s, including `qmark`, `numeric`, `named`, `format`, `pyformat`. configuration : dict of str keys and values, optional Configuration overlay for this query. Returns ------- NoneType Results are available through a call to `fetch*`. """

        # PEP 249
        self.execute_async(operation, parameters=parameters,
                           configuration=configuration)
        log.debug('Waiting for query to finish')
        self._wait_to_finish()  # make execute synchronous
        log.debug('Query finished')