MCPcopy Index your code
hub / github.com/apache/cassandra-python-driver / _create_response_future

Method _create_response_future

cassandra/cluster.py:2970–3075  ·  view source on GitHub ↗

Returns the ResponseFuture before calling send_request() on it

(self, query, parameters, trace, custom_payload,
                                timeout, execution_profile=EXEC_PROFILE_DEFAULT,
                                paging_state=None, host=None)

Source from the content-addressed store, hash-verified

2968 self.submit(query_future.send_request)
2969
2970 def _create_response_future(self, query, parameters, trace, custom_payload,
2971 timeout, execution_profile=EXEC_PROFILE_DEFAULT,
2972 paging_state=None, host=None):
2973 """ Returns the ResponseFuture before calling send_request() on it """
2974
2975 prepared_statement = None
2976
2977 if isinstance(query, str):
2978 query = SimpleStatement(query)
2979 elif isinstance(query, PreparedStatement):
2980 query = query.bind(parameters)
2981
2982 if self.cluster._config_mode == _ConfigMode.LEGACY:
2983 if execution_profile is not EXEC_PROFILE_DEFAULT:
2984 raise ValueError("Cannot specify execution_profile while using legacy parameters.")
2985
2986 if timeout is _NOT_SET:
2987 timeout = self.default_timeout
2988
2989 cl = query.consistency_level if query.consistency_level is not None else self.default_consistency_level
2990 serial_cl = query.serial_consistency_level if query.serial_consistency_level is not None else self.default_serial_consistency_level
2991
2992 retry_policy = query.retry_policy or self.cluster.default_retry_policy
2993 row_factory = self.row_factory
2994 load_balancing_policy = self.cluster.load_balancing_policy
2995 spec_exec_policy = None
2996 continuous_paging_options = None
2997 else:
2998 execution_profile = self._maybe_get_execution_profile(execution_profile)
2999
3000 if timeout is _NOT_SET:
3001 timeout = execution_profile.request_timeout
3002
3003 cl = query.consistency_level if query.consistency_level is not None else execution_profile.consistency_level
3004 serial_cl = query.serial_consistency_level if query.serial_consistency_level is not None else execution_profile.serial_consistency_level
3005 continuous_paging_options = execution_profile.continuous_paging_options
3006
3007 retry_policy = query.retry_policy or execution_profile.retry_policy
3008 row_factory = execution_profile.row_factory
3009 load_balancing_policy = execution_profile.load_balancing_policy
3010 spec_exec_policy = execution_profile.speculative_execution_policy
3011
3012 fetch_size = query.fetch_size
3013 if fetch_size is FETCH_SIZE_UNSET and self._protocol_version >= 2:
3014 fetch_size = self.default_fetch_size
3015 elif self._protocol_version == 1:
3016 fetch_size = None
3017
3018 start_time = time.time()
3019 if self._protocol_version >= 3 and self.use_client_timestamp:
3020 timestamp = self.cluster.timestamp_generator()
3021 else:
3022 timestamp = None
3023
3024 supports_continuous_paging_state = (
3025 ProtocolVersion.has_continuous_paging_next_pages(self._protocol_version)
3026 )
3027 if continuous_paging_options and supports_continuous_paging_state:

Callers 4

execute_asyncMethod · 0.95
execute_graph_asyncMethod · 0.95
_executeMethod · 0.80

Calls 15

SimpleStatementClass · 0.90
bind_paramsFunction · 0.90
QueryMessageClass · 0.90
ExecuteMessageClass · 0.90
BatchMessageClass · 0.90
ResponseFutureClass · 0.85
uses_keyspace_flagMethod · 0.80
update_custom_payloadMethod · 0.80

Tested by

no test coverage detected