original_string: protected function handleTransactionException($e, $currentAttempt, $maxAttempts)
      {
          // On a deadlock, MySQL rolls back the entire transaction so we can't just
          // retry the query. We have to throw this exception all the way out and
          // let the developer handle it in another way. We will decrement too.
          if ($this->causedByDeadlock($e) &&
              $this->transactions > 1) {
              --$this->transactions;
  
              throw $e;
          }
  
          // If there was an exception we will rollback this transaction and then we
          // can check if we have exceeded the maximum attempt count for this and
          // if we haven't we will return and try this query again in our loop.
          $this->rollBack();
  
          if ($this->causedByDeadlock($e) &&
              $currentAttempt < $maxAttempts) {
              return;
          }
  
          throw $e;
      }
code: protected function handleTransactionException($e, $currentAttempt, $maxAttempts)
      {
          // On a deadlock, MySQL rolls back the entire transaction so we can't just
          // retry the query. We have to throw this exception all the way out and
          // let the developer handle it in another way. We will decrement too.
          if ($this->causedByDeadlock($e) &&
              $this->transactions > 1) {
              --$this->transactions;
  
              throw $e;
          }
  
          // If there was an exception we will rollback this transaction and then we
          // can check if we have exceeded the maximum attempt count for this and
          // if we haven't we will return and try this query again in our loop.
          $this->rollBack();
  
          if ($this->causedByDeadlock($e) &&
              $currentAttempt < $maxAttempts) {
              return;
          }
  
          throw $e;
      }
code_tokens: protected function handleTransactionException ( $ e , $ currentAttempt , $ maxAttempts ) { // On a deadlock, MySQL rolls back the entire transaction so we can't just // retry the query. We have to throw this exception all the way out and // let the developer handle it in another way. We will decrement too. if ( $ this -> causedByDeadlock ( $ e ) && $ this -> transactions > 1 ) { -- $ this -> transactions ; throw $ e ; } // If there was an exception we will rollback this transaction and then we // can check if we have exceeded the maximum attempt count for this and // if we haven't we will return and try this query again in our loop. $ this -> rollBack ( ) ; if ( $ this -> causedByDeadlock ( $ e ) && $ currentAttempt < $ maxAttempts ) { return ; } throw $ e ; }
docstring: Handle an exception encountered when running a transacted statement.
  
  @param \Exception $e
  @param int        $currentAttempt
  @param int        $maxAttempts
  
  @throws \Exception
  
  @return void
docstring_tokens: Handle an exception encountered when running a transacted statement .