def METHOD_NAME():
    (
        mock_native_cursor,
        mock_managed_cursor,
        _,
        _,
        mock_connection_hook_spec,
    ) = populate_mock_managed_cursor()
    def mock_decorate(decoration_cursor: DecorationCursor):
        managed_operation = decoration_cursor.get_managed_operation()
        managed_operation.set_operation(
            f"decorated {managed_operation.get_operation()}"
        )
    def mock_recover(recovery_cursor: RecoveryCursor):
        recovery_cursor.execute("recovery")
        recovery_cursor.retry_operation()
        assert recovery_cursor.get_retries() == 1
    mock_connection_hook_spec.db_connection_decorate_operation.side_effect = (
        mock_decorate
    )
    mock_connection_hook_spec.db_connection_recover_operation.side_effect = mock_recover
    exception = Exception()
    mock_native_cursor.execute.side_effect = [exception, None, None]
    mock_managed_cursor.execute(_query)
    mock_connection_hook_spec.db_connection_recover_operation.assert_called_once()
    calls = [
        call(f"decorated {_query}"),
        call(f"decorated recovery"),
        call(f"decorated {_query}"),
    ]
    mock_native_cursor.execute.assert_has_calls(calls)