Options

Option Classes

ClusterOptions

class acouchbase_columnar.options.ClusterOptions(**kwargs: Unpack[ClusterOptionsKwargs])

Available options to set when creating a cluster.

Cluster options enable the configuration of various global cluster settings. Some options can be set globally for the cluster, but overridden for specific operations (i.e. TimeoutOptions). Most options are optional, values in parenthesis indicate C++ core default that will be used.

Note

Options and methods marked VOLATILE are subject to change at any time.

Parameters:
  • config_poll_floor (Optional[timedelta]) – Set to configure polling floor interval. Defaults to None (50ms).

  • config_poll_interval (Optional[timedelta]) – Set to configure polling floor interval. Defaults to None (2.5s).

  • deserializer (Optional[Deserializer]) – Set to configure global serializer to translate JSON to Python objects. Defaults to None (DefaultJsonDeserializer).

  • dns_nameserver (Optional[str]) – VOLATILE This API is subject to change at any time. Set to configure custom DNS nameserver. Defaults to None.

  • dns_port (Optional[int]) – VOLATILE This API is subject to change at any time. Set to configure custom DNS port. Defaults to None.

  • dump_configuration (Optional[bool]) – If enabled, dump received server configuration when TRACE level logging. Defaults to False (disabled).

  • enable_clustermap_notification (Optional[bool]) – If enabled, allows server to push configuration updates asynchronously. Defaults to True (enabled).

  • ip_protocol (Optional[Union[IpProtocol, str]]) – Controls preference of IP protocol for name resolution. Defaults to None (any).

  • network (Optional[str]) – Set to configure external network. Defaults to None (auto).

  • security_options (Optional[SecurityOptions]) – Security options for SDK connection.

  • timeout_options (Optional[TimeoutOptions]) – Timeout options for various SDK operations. See TimeoutOptions for details.

  • user_agent_extra (Optional[str]) – Set to add further details to identification fields in server protocols. Defaults to None ({Python SDK version} (python/{Python version})).

SecurityOptions

class acouchbase_columnar.options.SecurityOptions(**kwargs: Unpack[SecurityOptionsKwargs])

Available security options to set when creating a cluster.

All options are optional and not required to be specified. By default the SDK will trust only the Capella CA certificate(s). Only a single option related to which certificate(s) the SDK should trust can be used. The disable_server_certificate_verification option can either be enabled or disabled for any of the specified trust settings.

Parameters:
  • trust_only_capella (Optional[bool]) – If enabled, SDK will trust only the Capella CA certificate(s). Defaults to True (enabled).

  • trust_only_pem_file (Optional[str]) – If set, SDK will trust only the PEM-encoded certificate(s) at the specified file path. Defaults to None.

  • trust_only_pem_str (Optional[str]) – If set, SDK will trust only the PEM-encoded certificate(s) in the specified str. Defaults to None.

  • trust_only_certificates (Optional[List[str]]) – If set, SDK will trust only the PEM-encoded certificate(s) specified. Defaults to None.

  • trust_only_platform (Optional[bool]) – If enabled, SDK will trust only the platform certificate(s). Defaults to None.

  • disable_server_certificate_verification (Optional[bool]) – If disabled, SDK will trust any certificate regardless of validity. Should not be disabled in production environments. Defaults to True (enabled).

TimeoutOptions

class acouchbase_columnar.options.TimeoutOptions(**kwargs: Unpack[TimeoutOptionsKwargs])

Available timeout options to set when creating a cluster.

These options set the default timeouts for operations for the cluster. Some operations allow the timeout to be overridden on a per operation basis. All options are optional and default to None. Values in parenthesis indicate C++ core default that will be used if the option is not set.

Note

Options marked VOLATILE are subject to change at any time.

Parameters:
  • connect_timeout (Optional[timedelta]) – Set to configure the period of time allowed to complete bootstrap connection. Defaults to None (10s).

  • dispatch_timeout (Optional[timedelta]) – Set to configure the period of time allowed to complete HTTP connection prior to sending request. Defaults to None (30s).

  • dns_srv_timeout (Optional[timedelta]) – Set to configure the period of time allowed to complete DNS SRV query. Defaults to None (500ms).

  • management_timeout (Optional[timedelta]) – VOLATILE Set to configure the period of time allowed for management operations. Defaults to None (75s).

  • query_timeout (Optional[timedelta]) – Set to configure the period of time allowed for query operations. Defaults to None (10m).

  • resolve_timeout (Optional[timedelta]) – Set to configure the period of time allowed to complete resolve hostname of node to IP address. Defaults to None (2s).

  • socket_connect_timeout (Optional[timedelta]) – Set to configure the period of time allowed to complete creating socket connection to resolved IP. Defaults to None (2s).

QueryOptions

class acouchbase_columnar.options.QueryOptions(**kwargs: Unpack[QueryOptionsKwargs])

Available options for columnar query operation.

Timeout will default to cluster setting if not set for the operation.

Note

Options marked VOLATILE are subject to change at any time.

Parameters:
  • deserializer (Optional[Deserializer]) – Specifies a Deserializer to apply to results. Defaults to None (DefaultJsonDeserializer).

  • lazy_execute (Optional[bool]) – VOLATILE If enabled, the query will not execute until the application begins to iterate over results. Defaulst to None (disabled).

  • named_parameters (Optional[Dict[str, JSONType]]) – Values to use for positional placeholders in query.

  • positional_parameters (Optional[List[JSONType]]) – , optional): Values to use for named placeholders in query.

  • priority (Optional[bool]) – Indicates whether this query should be executed with a specific priority level.

  • query_context (Optional[str]) – Specifies the context within which this query should be executed.

  • raw (Optional[Dict[str, Any]]) – Specifies any additional parameters which should be passed to the Columnar engine when executing the query.

  • read_only (Optional[bool]) – Specifies that this query should be executed in read-only mode, disabling the ability for the query to make any changes to the data.

  • scan_consistency (Optional[QueryScanConsistency]) – Specifies the consistency requirements when executing the query.

  • timeout (Optional[timedelta]) – Set to configure allowed time for operation to complete. Defaults to None (75s).

Option TypeDict Classes

ClusterOptionsKwargs

class acouchbase_columnar.options.ClusterOptionsKwargs
config_poll_floor: Optional[timedelta]
config_poll_interval: Optional[timedelta]
deserializer: Optional[Deserializer]
dns_nameserver: Optional[str]
dns_port: Optional[int]
dump_configuration: Optional[bool]
enable_clustermap_notification: Optional[bool]
ip_protocol: Union[IpProtocol, str, None]
network: Optional[str]
security_options: Optional[SecurityOptionsBase]
timeout_options: Optional[TimeoutOptionsBase]
user_agent_extra: Optional[str]

SecurityOptionsKwargs

class acouchbase_columnar.options.SecurityOptionsKwargs
disable_server_certificate_verification: Optional[bool]
trust_only_capella: Optional[bool]
trust_only_certificates: Optional[List[str]]
trust_only_pem_file: Optional[str]
trust_only_pem_str: Optional[str]
trust_only_platform: Optional[bool]

TimeoutOptionsKwargs

class acouchbase_columnar.options.TimeoutOptionsKwargs
connect_timeout: Optional[timedelta]
dispatch_timeout: Optional[timedelta]
dns_srv_timeout: Optional[timedelta]
management_timeout: Optional[timedelta]
query_timeout: Optional[timedelta]
resolve_timeout: Optional[timedelta]
socket_connect_timeout: Optional[timedelta]

QueryOptionsKwargs

class acouchbase_columnar.options.QueryOptionsKwargs
deserializer: Optional[Deserializer]
lazy_execute: Optional[bool]
named_parameters: Optional[Dict[str, JSONType]]
positional_parameters: Optional[Iterable[JSONType]]
priority: Optional[bool]
query_context: Optional[str]
raw: Optional[Dict[str, Any]]
read_only: Optional[bool]
scan_consistency: Optional[QueryScanConsistency]
timeout: Optional[timedelta]