# README
Couchbase Go Core
This package provides the underlying Couchbase IO for the gocb project. If you are looking for the Couchbase Go SDK, you are probably looking for gocb.
Branching Strategy
The gocbcore library maintains a branch for each previous major revision of its API. These branches are introduced just prior to any API breaking changes. Active work is performed on the master branch, with releases being performed as tags. Work made on master which are not yet part of a tagged released should be considered liable to change.
License
Copyright 2017 Couchbase Inc.
Licensed under the Apache License, Version 2.0.
See LICENSE for further details.
# Functions
AcquireTimer acquires a time from a global pool of timers maintained by the library.
ControlledBackoff calculates a backoff time duration from the retry attempts on a given request.
CreateAgent creates an agent for performing normal operations.
CreateAgentGroup will return a new AgentGroup with a base config of the config provided.
CreateDcpAgent creates an agent for performing DCP operations.
DecodeCommonFlags decodes a flags value into a data type and compression type using the common flags specification.
DefaultStdioLogger gets the default standard I/O logger.
EnableHttpResponseTracking enables tracking response bodies to ensure that they are eventually closed.
EncodeCommonFlags encodes a data type and compression type into a flags value using the common flags specification.
ExponentialBackoff calculates a backoff time duration from the retry attempts on a given request.
InitTransactions will initialize the transactions library and return a TransactionsManager object which can be used to perform transactions.
NewBestEffortRetryStrategy returns a new BestEffortRetryStrategy which will use the supplied calculator function to calculate retry durations.
NewInMemoryTransactionLogger returns a new in memory transaction logger.
NewLostTransactionCleaner returns new lost transaction cleaner.
NewNoopTransactionLogger returns a new noop transaction logger.
NewTransactionsCleaner returns a TransactionsCleaner implementation.
ReleaseTimer returns a timer to the global pool of timers maintained by the library.
ReportLeakedHttpResponses prints the stack traces of any response bodies that have not been closed.
SaslAuthPlain performs PLAIN SASL authentication against an AuthClient.
SaslAuthScramSha1 performs SCRAM-SHA1 SASL authentication against an AuthClient.
SaslAuthScramSha256 performs SCRAM-SHA256 SASL authentication against an AuthClient.
SaslAuthScramSha512 performs SCRAM-SHA512 SASL authentication against an AuthClient.
SetLogger sets a logger to be used by the library.
SetLogRedactionLevel specifies the level with which logs should be redacted.
TransactionsProtocolExtensions returns a list strings representing the various features that this specific version of the library supports within its protocol version.
TransactionsProtocolVersion returns the protocol version that this library supports.
VerboseStdioLogger is a more verbose level of DefaultStdioLogger().
Version returns a string representation of the current SDK version.
# Constants
BackupService represents the backup service.
BinaryType indicates the value is binary data.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Uncommitted: This API may change in the future.
Deprecated: Use CapabilityStatusSupported instead.
Deprecated: Use CapabilityStatusUnknown instead.
Deprecated: Use CapabilityStatusUnsupported instead.
No description provided by the author
No description provided by the author
No description provided by the author
CapiService represents a CouchAPI service (typically for views).
CbasService represents an analytics service.
ClusterStateDegraded specifies that at least one socket per service is reachable.
ClusterStateOffline is used to specify that not even one socker per service is reachable.
ClusterStateOnline specifies that all nodes and their sockets are reachable.
DcpAgentPriorityHigh sets the priority for the dcp stream to high.
DcpAgentPriorityLow sets the priority for the dcp stream to low.
DcpAgentPriorityMed sets the priority for the dcp stream to medium.
DCPBackfillOrderRoundRobin means that all the requested vBuckets will be backfilled together where each vBucket has some data backfilled before moving on to the next.
DCPBackfillOrderSequential means that all the data for the first vBucket will be streamed before advancing onto the next vBucket.
EndpointStateConnected indicates that the endpoint is connected.
EndpointStateConnecting indicates that the endpoint is connecting.
EndpointStateDisconnected indicates that the endpoint is disconnected.
EndpointStateDisconnecting indicates that the endpoint is disconnecting.
EventingService represents the eventing service.
FtsService represents a full-text-search service.
GSIService represents the indexing service.
JSONType indicates the value is JSON data.
Various logging levels (or subsystems) which can categorize the message.
Various logging levels (or subsystems) which can categorize the message.
Various logging levels (or subsystems) which can categorize the message.
Various logging levels (or subsystems) which can categorize the message.
Various logging levels (or subsystems) which can categorize the message.
Various logging levels (or subsystems) which can categorize the message.
Various logging levels (or subsystems) which can categorize the message.
MemdService represents a memcached service.
MgmtService represents a management service (typically ns_server).
N1qlService represents a N1QL service (typically for query).
NoCompression indicates that no compression is being used.
PingStateError indicates that the ping request to an endpoint encountered an error.
PingStateOK indicates that an endpoint is OK.
PingStateTimeout indicates that the ping request to an endpoint timed out.
PlainAuthMechanism represents that PLAIN auth should be performed.
RedactFull indicates to fully redact all possible identifying information from logs.
RedactNone indicates to perform no redactions.
RedactPartial indicates to redact all possible user-identifying information from logs.
ScramSha1AuthMechanism represents that SCRAM SHA1 auth should be performed.
ScramSha256AuthMechanism represents that SCRAM SHA256 auth should be performed.
ScramSha512AuthMechanism represents that SCRAM SHA512 auth should be performed.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
StringType indicates the value is string data.
TransactionAttemptStateAborted indicates that the transaction was aborted.
TransactionAttemptStateCommitted indicates that the transaction is now logically committed but the unstaging of documents is still underway.
TransactionAttemptStateCommitting indicates that the transaction is now trying to become committed, if we stay in this state, it implies ambiguity.
TransactionAttemptStateCompleted indicates that the transaction has been fully completed and no longer has work to perform.
TransactionAttemptStateNothingWritten indicates that nothing has been written yet.
TransactionAttemptStatePending indicates that the transaction ATR has been written and the transaction is currently pending.
TransactionAttemptStateRolledBack indicates that the transaction was not committed and instead was rolled back in its entirety.
TransactionDurabilityLevelMajority indicates the operation must be replicated to the majority.
TransactionDurabilityLevelMajorityAndPersistToActive indicates the operation must be replicated to the majority and persisted to the active server.
TransactionDurabilityLevelNone indicates that no durability is needed.
TransactionDurabilityLevelPersistToMajority indicates the operation must be persisted to the active server.
TransactionDurabilityLevelUnknown indicates to use the default level.
TransactionErrorClassFailAmbiguous indicates an error occurred leaving the transaction in an ambiguous way.
TransactionErrorClassFailCasMismatch indicates an error occurred because of a cas mismatch.
TransactionErrorClassFailDocAlreadyExists indicates an error occurred because a document already exists.
TransactionErrorClassFailDocNotFound indicates an error occurred because of a document not found.
TransactionErrorClassFailExpiry indicates an error occurred because the transaction expired.
TransactionErrorClassFailHard indicates an error occurred because of a hard error.
TransactionErrorClassFailOther indicates an error occurred because it did not fit into any other reason.
TransactionErrorClassFailOutOfSpace indicates an error occurred because the ATR is full.
TransactionErrorClassFailPathAlreadyExists indicates an error occurred because a path already exists.
TransactionErrorClassFailPathNotFound indicates an error occurred because a path was not found.
TransactionErrorClassFailTransient indicates an error occurred because of a transient reason.
TransactionErrorClassFailWriteWriteConflict indicates an error occurred because of a write write conflict.
TransactionErrorReasonSuccess indicates the transaction succeeded and did not fail.
TransactionErrorReasonTransactionCommitAmbiguous indicates the transaction should be failed and the commit was ambiguous.
TransactionErrorReasonTransactionExpired indicates the transaction should be failed because it expired.
TransactionErrorReasonTransactionFailed indicates the transaction should be failed because it failed.
TransactionErrorReasonTransactionFailedPostCommit indicates the transaction should be failed because it failed post commit.
TransactionStagedMutationInsert indicates the staged mutation was an insert operation.
TransactionStagedMutationRemove indicates the staged mutation was an remove operation.
TransactionStagedMutationReplace indicates the staged mutation was an replace operation.
TransactionStagedMutationUnknown indicates an error has occured.
UnknownCompression indicates that the compression type is unknown.
UnknownType indicates the values type is unknown.
# Variables
AnalyticsTemporaryFailureRetryReason indicates that an analytics operation failed due to a temporary failure.
BucketNotReadyReason indicates that the user has priviledges to access the bucket but the bucket doesn't exist or is in warm up.
CircuitBreakerOpenRetryReason indicates that the operation failed because the circuit breaker for the underlying socket was open.
ConnectionErrorRetryReason indicates that there were errors reported by underlying connections.
CredentialsFetchFailedRetryReason indicates that the operation failed because the AuthProvider return an error for credentials.
ErrAmbiguous indicates that a failure occured but the outcome was not known.
Shared Error Definitions RFC#58@15.
ErrAtrEntryNotFound indicates that an expected ATR entry was missing.
ErrAtrFull indicates that the ATR record was too full to accept a new mutation.
ErrAtrNotFound indicates that an expected ATR document was missing.
ErrAttemptExpired indicates an attempt expired.
Shared Error Definitions RFC#58@15.
ErrBadHosts occurs when the list of hosts specified cannot be contacted.
ErrBucketAlreadySelected occurs when SelectBucket is called when a bucket is already selected..
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Uncommitted: This API may change in the future Signals that an operation was cancelled due to the circuit breaker being open.
ErrCliInternalError indicates an internal error occurred within the client.
Management Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
ErrCollectionsUnsupported occurs when collections are used but either server does not support them or the agent was created without them enabled.
Analytics Error Definitions RFC#58@15.
Uncommitted: This API may change in the future.
Analytics Error Definitions RFC#58@15.
Analytics Error Definitions RFC#58@15.
Analytics Error Definitions RFC#58@15.
Analytics Error Definitions RFC#58@15.
ErrDCPBackfillFailed occurs when there was an issue starting the backfill on the server e.g.
ErrDCPStreamClosed occurs when a DCP stream is closed gracefully.
ErrDCPStreamDisconnected occurs when a DCP stream is disconnected.
ErrDCPStreamFilterEmpty occurs when all of the collections for a DCP stream are dropped.
ErrDCPStreamIDInvalid occurs when a dcp stream ID is invalid.
ErrDCPStreamStateChanged occurs when a DCP stream is interrupted by failover.
ErrDCPStreamTooSlow occurs when a DCP stream is cancelled due to the application not keeping up with the rate of flow of DCP events sent by the server.
Shared Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
View Error Definitions RFC#58@15.
Query Error Definitions RFC#58@15.
ErrDocAlreadyInTransaction indicates that a document is already in a transaction.
Uncommitted: This API may change in the future.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
ErrFeatureNotAvailable occurs when an operation is performed on a bucket which does not support it.
ErrForcedReconnect occurs when an operation is in flight during a forced reconnect.
ErrForwardCompatibilityFailure indicates an operation failed due to involving a document in another transaction which contains features this transaction does not support.
ErrGCCCPInUse occurs when an operation dis performed whilst the client is connect via GCCCP.
Management Error Definitions RFC#58@15.
ErrHard indicates that an unrecoverable error occured.
ErrIllegalState is used for when a transaction enters an illegal State.
Shared Error Definitions RFC#58@15.
Query Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
ErrInvalidCertificate occurs when a certificate that is not useable is passed to an Agent.
ErrInvalidCredentials is returned when an invalid set of credentials is provided for a service.
ErrInvalidReplica occurs when an explicit, but invalid replica index is specified.
ErrInvalidServer occurs when an explicit, but invalid server is specified.
ErrInvalidService occurs when an explicit but invalid service type is specified.
ErrInvalidVBucket occurs when an explicit, but invalid vbucket index is specified.
Analytics Error Definitions RFC#58@15.
Analytics Error Definitions RFC#58@15.
ErrMemdAccessError occurs when an access error occurs.
ErrMemdAuthContinue occurs in multi-step authentication when more authentication work needs to be performed in order to complete the authentication process.
ErrMemdAuthError occurs when the authentication information provided was not valid.
ErrMemdAuthStale occurs when authentication credentials have become invalidated.
ErrMemdBadDelta occurs when an invalid delta value is specified to a counter operation.
ErrMemdBusy occurs when the server is too busy to process your request right away.
Shared Error Definitions RFC#58@15.
ErrMemdCollectionNotFound occurs when a Collection cannot be found.
ErrMemdConfigOnly occurs when an operation cannot be executed against a node because the bucket is in config-only mode.
ErrMemdDCPStreamIDInvalid occurs when a dcp stream ID is invalid.
ErrMemdDurabilityImpossible occurs when a request is performed with impossible durability level requirements.
ErrMemdDurabilityInvalidLevel occurs when an invalid durability level was requested.
ErrMemdInternalError occurs when internal errors prevent the server from processing your request.
ErrMemdInvalidArgs occurs when the server receives invalid arguments for an operation.
ErrMemdKeyExists occurs when an operation is performed on a key that could not be found.
ErrMemdKeyNotFound occurs when an operation is performed on a key that does not exist.
ErrMemdLocked occurs when a document is already locked.
ErrMemdNoBucket occurs when no bucket was selected on a connection.
ErrMemdNotInitialized is sent by servers which are still initializing, and are not yet ready to accept operations on behalf of a particular bucket.
ErrMemdNotLocked occurs when an operation attempts to unlock a document which is not locked.
ErrMemdNotMyVBucket occurs when an operation is dispatched to a server which is non-authoritative for a specific vbucket.
ErrMemdNotStored occurs when the server fails to store a key.
ErrMemdNotSupported occurs when an operation is understood by the server, but that operation is not supported on this server (occurs for a variety of reasons).
ErrMemdOutOfMemory occurs when the server cannot service a request due to memory limitations.
ErrMemdRangeError occurs when the range specified to the server is not valid.
ErrMemdRangeScanCancelled occurs during a range scan to indicate that the range scan was cancelled.
ErrMemdRangeScanComplete occurs during a range scan to indicate that a range scan has completed.
ErrMemdRangeScanMore occurs during a range scan to indicate that a range scan has more results.
ErrMemdRangeScanVbUUIDNotEqual occurs during a range scan to indicate that a vb-uuid mismatch has occurred.
ErrMemdRateLimitedMaxCommands occurs when the server rate limits due to the application reaching the maximum number of allowed operations.
ErrMemdRateLimitedMaxConnections occurs when the server rate limits due to the application reaching the maximum number of allowed connections.
ErrMemdRateLimitedNetworkEgress occurs when the server rate limits due to network egress.
ErrMemdRateLimitedNetworkIngress occurs when the server rate limits due to network ingress.
ErrMemdRateLimitedScopeSizeLimitExceeded occurs when the server rate limits due to the application reaching the maximum data size allowed for the scope.
ErrMemdRollback occurs when a DCP stream fails to open due to a rollback having previously occurred since the last time the stream was opened.
ErrMemdScopeNotFound occurs when a Scope cannot be found.
ErrMemdSubDocBadCombo occurs when a multi-operation sub-document operation is performed and operations within the package of ops conflict with each other.
ErrMemdSubDocBadDelta occurs when a sub-document counter operation is performed and the specified delta is not valid.
ErrMemdSubDocBadMulti occurs when a multi-operation sub-document operation is performed and operations within the package of ops conflict with each other.
ErrMemdSubDocBadRange occurs when a sub-document operation is performed with a bad range.
ErrMemdSubDocCanOnlyReviveDeletedDocuments occurs when revive document is used on a document that is not deleted.
ErrMemdSubDocCantInsert occurs when a sub-document operation could not insert.
ErrMemdSubDocDocTooDeep occurs when an operation would cause a document to be nested beyond the depth limits allowed by the sub-document specification.
ErrMemdSubDocMultiPathFailureDeleted occurs when a Multi Path Failure occurs on a soft-deleted document.
ErrMemdSubDocNotJSON occurs when a sub-document operation is performed on a document which is not JSON.
ErrMemdSubDocPathExists occurs when a sub-document operation expects a path not to exists, but the path was found in the document.
ErrMemdSubDocPathInvalid occurs when a sub-document path could not be parsed.
ErrMemdSubDocPathMismatch occurs when a sub-document operation specifies a path which does not match the document structure (field access on an array).
ErrMemdSubDocPathNotFound occurs when a sub-document operation targets a path which does not exist in the specifie document.
ErrMemdSubDocPathTooBig occurs when a sub-document path is too big.
ErrMemdSubDocSuccessDeleted occurs when a multi-operation sub-document operation is performed on a soft-deleted document.
ErrMemdSubDocValueTooDeep occurs when a sub-document operation specifies a value which is deeper than the depth limits of the sub-document specification.
ErrMemdSubDocXattrCannotModifyVAttr occurs when a mutation is attempted upon a virtual attribute (which are immutable by definition).
ErrMemdSubDocXattrInvalidFlagCombo occurs when an invalid set of extended-attribute flags is passed to a sub-document operation.
ErrMemdSubDocXattrInvalidKeyCombo occurs when an invalid set of key operations are specified for a extended-attribute sub-document operation.
ErrMemdSubDocXattrUnknownMacro occurs when an invalid macro value is specified.
ErrMemdSubDocXattrUnknownVAttr occurs when an invalid virtual attribute is specified.
ErrMemdSyncWriteAmbiguous occurs when an SyncWrite does not complete in the specified time and the result is ambiguous.
ErrMemdSyncWriteInProgess occurs when an attempt is made to write to a key that has a SyncWrite pending.
ErrMemdSyncWriteReCommitInProgress occurs when an SyncWrite is being recommitted.
ErrMemdTmpFail occurs when a temporary failure is preventing the server from processing your request.
ErrMemdTooBig occurs when an operation attempts to store more data in a single document than the server is capable of storing (by default, this is a 20MB limit).
ErrMemdUnknownCommand occurs when an unknown operation is sent to a server.
Key Value Error Definitions RFC#58@15.
ErrNoAttempt indicates no attempt was started before an operation was performed.
ErrNoReplicas occurs when no replicas respond in time.
ErrNoSupportedMechanisms occurs when the server does not support any of the authentication methods that the client finds suitable.
ErrNotMyVBucket occurs when an operation is sent to a node which does not own the vbucket.
ErrNotStored occurs when the server could not store the document.
Key Value Error Definitions RFC#58@15.
ErrOther indicates an non-specific error has occured.
ErrOverload occurs when too many operations are dispatched and all queues are full.
Shared Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Query Error Definitions RFC#58@15.
Query Error Definitions RFC#58@15.
ErrPreviousOperationFailed indicates a previous operation in the transaction failed.
ErrProtocol occurs when the server responds with unexpected or unparseable data.
Uncommitted: This API may change in the future.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Uncommitted: This API may change in the future.
Shared Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
ErrServerGroupMismatch occurs when a server group is requested for an operation but no replicas exist for that vbucket id.
Shared Error Definitions RFC#58@15.
ErrShutdown occurs when operations are performed on a previously closed Agent.
ErrSocketClosed occurs when a socket closes while an operation is in flight.
ErrStreamIDNotEnabled occurs when dcp operations are performed using a stream ID when stream IDs are not enabled.
Shared Error Definitions RFC#58@15.
ErrTimeout occurs when an operation does not receive a response in a timely manner.
ErrTransactionAbortedExternally indicates the transaction was aborted externally.
ErrTransient indicates a transient error occured which may succeed at a later point in time.
Shared Error Definitions RFC#58@15.
Shared Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Management Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
View Error Definitions RFC#58@15.
ErrWriteWriteConflict indicates that another transaction conflicted with this one.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
Key Value Error Definitions RFC#58@15.
KVCollectionOutdatedRetryReason indicates that the operation failed because the collection ID on the request is outdated.
KVErrMapRetryReason indicates that the operation failed for an unsupported reason but the KV error map indicated that the operation can be retried.
KVLockedRetryReason indicates that the operation failed because the document was locked.
KVNotMyVBucketRetryReason indicates that the operation failed because it was sent to the wrong node for the vbucket.
KVSyncWriteInProgressRetryReason indicates that the operation failed because a sync write is in progress.
KVSyncWriteRecommitInProgressRetryReason indicates that the operation failed because a sync write recommit is in progress.
KVTemporaryFailureRetryReason indicates that the operation failed because of a temporary failure.
MemdWriteFailure indicates that the operation failed because the write failed on the connection.
NodeNotAvailableRetryReason indicates that the operation failed because the requested node was not available.
NoPipelineSnapshotRetryReason indicates that there was no pipeline snapshot available.
NotReadyRetryReason indicates that the WaitUntilReady operation is not ready.
PipelineOverloadedRetryReason indicates that the operation failed because the pipeline queue was full.
QueryErrorRetryable indicates that the operation is retryable as indicated by the query engine.
QueryIndexNotFoundRetryReason indicates that the operation failed to to a missing query index.
QueryPreparedStatementFailureRetryReason indicates that the operation failed due to a prepared statement failure.
SearchTooManyRequestsRetryReason indicates that a search operation failed due to too many requests.
ServiceNotAvailableRetryReason indicates that the operation failed because the requested service was not available.
ServiceResponseCodeIndicatedRetryReason indicates that the operation failed and the service responded stating that the request should be retried.
SocketCloseInFlightRetryReason indicates that the operation failed because the socket was closed whilst the operation was in flight.
SocketNotAvailableRetryReason indicates that the operation failed because the underlying socket was not available.
UnknownRetryReason indicates that the operation failed for an unknown reason.
# Structs
AddOptions encapsulates the parameters for a AddEx operation.
AdjoinOptions encapsulates the parameters for a AppendEx or PrependEx operation.
AdjoinResult encapsulates the result of a AppendEx or PrependEx operation.
Agent represents the base client handling connections to a Couchbase Server.
AgentConfig specifies the configuration options for creation of an Agent.
AgentGroup represents a collection of agents that can be used for performing operations against a cluster.
AgentGroupConfig specifies the configuration options for creation of an AgentGroup.
AgentGroupInternal is a set of internal-only functionality.
AgentInternal is a set of internal only functionality.
AnalyticsError represents an error returned from an analytics query.
AnalyticsErrorDesc represents specific analytics error data.
AnalyticsQueryOptions represents the various options available for an analytics query.
AnalyticsRowReader providers access to the rows of a analytics query.
AuthCertRequest represents a certificate details request from the agent.
AuthCredsRequest represents an authentication details request from the agent.
BestEffortRetryStrategy represents a strategy that will keep retrying until it succeeds (or the caller times out the request).
CircuitBreakerConfig is the set of configuration settings for configuring circuit breakers.
CloseStreamOptions are the options available to the CloseStream operation.
CloseStreamStreamOptions are the stream options available to the CloseStream operation.
ClusterLabels encapsulates the cluster UUID and cluster name as published by the server.
CompressionConfig specifies options for controlling compression applied to documents using KV.
ConfigPollerConfig specifies options for controlling the cluster configuration pollers.
ConfigSnapshot is a snapshot of the underlying configuration currently in use.
CounterOptions encapsulates the parameters for a IncrementEx or DecrementEx operation.
CounterResult encapsulates the result of a IncrementEx or DecrementEx operation.
DCPAgent represents the base client handling DCP connections to a Couchbase Server.
DCPAgentConfig specifies the configuration options for creation of a DCPAgent.
DcpCollectionCreation represents a collection create DCP event from the server.
DcpCollectionDeleteion represents a collection delete DCP event from the server.
DcpCollectionFlush represents a collection flush DCP event from the server.
DcpCollectionModification represents a DCP collection modify event from the server.
DCPConfig specifies DCP specific configuration options.
DcpDeletion represents a single DCP deletion from the server.
DcpExpiration represents a single DCP expiration from the server.
DcpMutation represents a single DCP mutation from the server.
DcpOSOSnapshot reprensents a DCP OSSSnapshot from the server.
No description provided by the author
DcpScopeCreation represents a scope creation DCP event from the server.
DcpScopeDeletion represents a scope Deletion DCP event from the server.
DcpSeqNoAdvanced represents a DCP SeqNoAdvanced from the server.
DcpSnapshotMarker represents a single response from the server.
DcpStreamEnd represnets a DCP stream end from the server.
DeleteMetaOptions encapsulates the parameters for a DeleteMetaEx operation.
DeleteMetaResult encapsulates the result of a DeleteMetaEx operation.
DeleteOptions encapsulates the parameters for a DeleteEx operation.
DeleteResult encapsulates the result of a DeleteEx operation.
DiagnosticInfo is returned by the Diagnostics method and includes information about the overall health of the clients connections.
DiagnosticsOptions encapsulates the parameters for a Diagnostics operation.
EndpointPingResult contains the results of a ping to a single server.
ExecHelloResponse contains the features and/or error from an ExecHello operation.
FailoverEntry represents a single entry in the server fail-over log.
GetAllCollectionManifestsOptions are the options available to the GetAllCollectionManifests command.
GetAllCollectionManifestsResult encapsulates the result of a GetAllCollectionManifests operation.
GetAndLockOptions encapsulates the parameters for a GetAndLockEx operation.
GetAndLockResult encapsulates the result of a GetAndLockEx operation.
GetAndTouchOptions encapsulates the parameters for a GetAndTouchEx operation.
GetAndTouchResult encapsulates the result of a GetAndTouchEx operation.
GetAnyReplicaOptions encapsulates the parameters for a GetAnyReplicaEx operation.
GetCollectionIDOptions are the options available to the GetCollectionID command.
GetCollectionIDResult encapsulates the result of a GetCollectionID operation.
GetCollectionManifestOptions are the options available to the GetCollectionManifest command.
GetCollectionManifestResult encapsulates the result of a GetCollectionManifest operation.
GetMetaOptions encapsulates the parameters for a GetMetaEx operation.
GetMetaResult encapsulates the result of a GetMetaEx operation.
GetOneReplicaOptions encapsulates the parameters for a GetOneReplicaEx operation.
GetOptions encapsulates the parameters for a GetEx operation.
GetRandomOptions encapsulates the parameters for a GetRandomEx operation.
GetRandomResult encapsulates the result of a GetRandomEx operation.
GetReplicaResult encapsulates the result of a GetReplica operation.
GetResult encapsulates the result of a GetEx operation.
GetVbucketSeqnoFilterOptions are the filter options available to the GetVbucketSeqno operation.
GetVbucketSeqnoOptions are the options available to the GetVbucketSeqno operation.
HTTPConfig specifies http related configuration options.
HTTPError represents an error returned from an HTTP request.
HTTPRequest contains the description of an HTTP request to perform.
HTTPResponse encapsulates the response from an HTTP request.
InMemoryTransactionLogger logs to memory, also logging WARN and ERROR logs to the SDK logger.
InternalConfig specifies internal configs.
IoConfig specifies IO related configuration options such as HELLO flags and the network type to use.
KeyValueError wraps key-value errors that occur within the SDK.
KVConfig specifies kv related configuration options.
LookupInOptions encapsulates the parameters for a LookupInEx operation.
LookupInResult encapsulates the result of a LookupInEx operation.
Manifest is the representation of a collections manifest.
ManifestCollection is the representation of a collection within a manifest.
ManifestScope is the representation of a scope within a manifest.
MemdConnInfo represents information we know about a particular memcached connection reported in a diagnostics report.
MeterConfig specifies meter related configuration options.
MutateInOptions encapsulates the parameters for a MutateInEx operation.
MutateInResult encapsulates the result of a MutateInEx operation.
MutationToken represents a particular mutation within the cluster.
N1QLError represents an error returned from a n1ql query.
N1QLErrorDesc represents specific n1ql error data.
N1QLQueryOptions represents the various options available for a n1ql query.
N1QLRowReader providers access to the rows of a n1ql query.
NoopTransactionLogger logs to the SDK logs when the level is WARN or ERROR.
NoRetryRetryAction represents an action that indicates to not retry.
ObserveOptions encapsulates the parameters for a ObserveEx operation.
ObserveResult encapsulates the result of a ObserveEx operation.
ObserveVbOptions encapsulates the parameters for a ObserveVbEx operation.
ObserveVbResult encapsulates the result of a ObserveVbEx operation.
OpenStreamFilterOptions are the filtering options available to the OpenStream operation.
OpenStreamManifestOptions are the manifest options available to the OpenStream operation.
OpenStreamOptions are the options available to the OpenStream operation.
OpenStreamStreamOptions are the stream options available to the OpenStream operation.
OrphanReporterConfig specifies options for controlling the orphan reporter which records when the SDK receives responses for requests that are no longer in the system (usually due to being timed out).
PasswordAuthProvider provides a standard AuthProvider implementation for use with a standard username/password pair (for example, RBAC).
PingOptions encapsulates the parameters for a PingKv operation.
PingResult encapsulates the result of a PingKv operation.
RangeScanCancelOptions encapsulates the parameters for a RangeScanCancel operation.
RangeScanCancelResult encapsulates the result of a RangeScanCancel operation.
RangeScanContinueOptions encapsulates the parameters for a RangeScanContinue operation.
RangeScanContinueResult encapsulates the result of a RangeScanContinue operation.
RangeScanCreateOptions encapsulates the parameters for a RangeScanCreate operation.
RangeScanCreateRandomSamplingConfig is the configuration available for performing a random sampling.
RangeScanCreateRangeScanConfig is the configuration available for performing a range scan.
RangeScanCreateSnapshotRequirements is the set of requirements that the vbucket snapshot must meet in-order for the request to be successful.
RangeScanItem encapsulates an iterm returned during a range scan.
ReconfigureSecurityOptions are the options available to the ReconfigureSecurity function.
ReplaceOptions encapsulates the parameters for a ReplaceEx operation.
ResourceUnitResult describes the number of compute units used by an operation.
ResumeTransactionOptions specifies options which can be overridden for the resumed transaction.
SaslListMechsCompleted is used to contain the result and/or error from a SaslListMechs operation.
SearchError represents an error returned from a search query.
SearchQueryOptions represents the various options available for a search query.
SearchRowReader providers access to the rows of a view query.
SecurityConfig specifies options for controlling security related items such as TLS root certificates and verification skipping.
SeedConfig specifies initial seed configuration options such as addresses.
SetMetaOptions encapsulates the parameters for a SetMetaEx operation.
SetMetaResult encapsulates the result of a SetMetaEx operation.
SetOptions encapsulates the parameters for a SetEx operation.
SingleServerManifestResult encapsulates the result from a single server when using the GetAllCollectionManifests operation.
SingleServerStats represents the stats returned from a single server.
SRVRecord describes the SRV record used to extract memd addresses in the SeedConfig.
StatsOptions encapsulates the parameters for a Stats operation.
StatsResult encapsulates the result of a Stats operation.
StoreResult encapsulates the result of a AddEx, SetEx or ReplaceEx operation.
SubDocOp defines a per-operation structure to be passed to MutateIn or LookupIn for performing many sub-document operations.
SubDocResult encapsulates the results from a single sub-document operation.
SubDocumentError provides additional contextual information to sub-document specific errors.
TimeoutError wraps timeout errors that occur within the SDK.
TouchOptions encapsulates the parameters for a TouchEx operation.
TouchResult encapsulates the result of a TouchEx operation.
TracerConfig specifies tracer related configuration options.
Transaction represents a single active transaction, it can be used to stage mutations and finally commit them.
TransactionATRLocation specifies a specific location where ATR entries should be placed when performing transactions.
TransactionAttempt represents a singular attempt at executing a transaction.
TransactionClientRecordDetails is the result of processing a client record.
TransactionCreateGetResultOptions exposes options for the Internal CreateGetResult method.
TransactionDefaultCleanupHooks is default set of noop hooks used within the library.
TransactionDefaultClientRecordHooks is default set of noop hooks used within the library.
TransactionDefaultHooks is default set of noop hooks used within the library.
TransactionForwardCompatibilityEntry represents a forward compatibility entry.
TransactionGetOptions provides options for a Get operation.
TransactionGetResult represents the result of a Get or GetOptional operation.
TransactionInsertOptions provides options for a Insert operation.
TransactionLogItem represents an entry in the transaction in memory logging.
TransactionLostATRLocation specifies a specific location where lost transactions should attempt cleanup.
TransactionMutableItemMeta represents all the meta-data for a fetched item.
TransactionMutableItemMetaATR represents the ATR for meta.
TransactionOperationFailedError is used when a transaction operation fails.
TransactionOptions specifies options which can be overridden on a per transaction basis.
TransactionProcessATRStats is the stats recorded when running a ProcessATR request.
TransactionRemoveOptions provides options for a Remove operation.
TransactionReplaceOptions provides options for a Replace operation.
TransactionResourceUnitResult describes the number of resource units used by a transaction attempt.
TransactionResult represents the result of a transaction which was executed.
TransactionsCleanupAttempt represents the result of running cleanup for a transaction attempt.
TransactionsCleanupRequest represents a complete transaction attempt that requires cleanup.
TransactionsConfig specifies various tunable options related to transactions.
TransactionsDocRecord represents an individual document operation requiring cleanup.
TransactionsManager is the top level wrapper object for all transactions handling.
TransactionsManagerInternal exposes internal methods that are useful for testing and/or other forms of internal use.
TransactionStagedMutation wraps all of the information about a mutation which has been staged as part of the transaction and which should later be unstaged when the transaction has been committed.
TransactionUpdateStateOptions are the settings available to UpdateState.
UnlockOptions encapsulates the parameters for a UnlockEx operation.
UnlockResult encapsulates the result of a UnlockEx operation.
UserPassPair represents a username and password pair.
VbSeqNoEntry represents a single GetVbucketSeqnos sequence number entry.
VBucketIDStatsTarget indicates that a specific vbucket should be targeted by the Stats operation.
ViewError represents an error returned from a view query.
ViewQueryErrorDesc represents specific view error data.
ViewQueryOptions represents the various options available for a view query.
ViewQueryRowReader providers access to the rows of a view query.
WaitForConfigSnapshotOptions encapsulates the parameters for a WaitForConfigSnapshot operation.
WaitForConfigSnapshotResult encapsulates the result of a WaitForConfig operation.
WaitUntilReadyOptions encapsulates the parameters for a WaitUntilReady operation.
WaitUntilReadyResult encapsulates the result of a WaitUntilReady operation.
WithDurationRetryAction represents an action that indicates to retry with a given duration.
# Interfaces
AuthClient exposes an interface for performing authentication on a connected Couchbase K/V client.
AuthProvider is an interface to allow the agent to fetch authentication credentials on-demand from the application.
Counter is used for incrementing a synchronous count metric.
Logger defines a logging interface.
LostTransactionCleaner is responsible for cleaning up lost transactions.
Meter handles metrics information for SDK operations.
PendingOp represents an outstanding operation within the client.
RangeScanCreateResult encapsulates the result of a RangeScanCreate operation.
RequestSpan is the interface for spans that are created by a RequestTracer.
RequestSpanContext is the interface for external span contexts that can be passed in into the SDK option blocks.
RequestTracer describes the tracing abstraction in the SDK.
RetryAction is used by a RetryStrategy to calculate the duration to wait before retrying an operation.
RetryReason represents the reason for an operation possibly being retried.
RetryRequest is a request that can possibly be retried.
RetryStrategy is to determine if an operation should be retried, and if so how long to wait before retrying.
StatsTarget is used for providing a specific target to the Stats operation.
StreamObserver provides an interface to receive events from a running DCP stream.
TransactionCleanUpHooks provides a number of internal hooks used for testing.
TransactionClientRecordHooks provides a number of internal hooks used for testing.
TransactionHooks provides a number of internal hooks used for testing.
TransactionLogger is the logger used for logging in transactions.
TransactionsCleaner is responsible for performing cleanup of completed transactions.
ValueRecorder is used for grouping synchronous count metrics.
# Type aliases
AdjoinCallback is invoked upon completion of a Append or Prepend operation.
AnalyticsQueryCallback is invoked upon completion of a AnalyticsQuery operation.
AuthMechanism represents a type of auth that can be performed.
BackoffCalculator is used by retry strategies to calculate backoff durations.
No description provided by the author
Deprecated: Use CapabilityStatus instead.
No description provided by the author
Cas represents a unique revision of a document.
CircuitBreakerCallback is the callback used by the circuit breaker to determine if an error should count toward the circuit breaker failure count.
CloseStreamCallback is invoked with the results of `CloseStream` operations.
ClusterState is used to describe the state of a cluster.
CompressionType indicates the type of compression for a value.
CounterCallback is invoked upon completion of a Increment or Decrement operation.
DataType represents the type of data for a value.
DcpAgentPriority specifies the priority level for a dcp stream.
DCPBackfillOrder represents the order in which vBuckets will be backfilled by the cluster.
DeleteCallback is invoked upon completion of a Delete operation.
DeleteMetaCallback is invoked upon completion of a DeleteMeta operation.
DoHTTPRequestCallback is invoked upon completion of a DoHTTPRequest operation.
EndpointState is the current connection state of an endpoint.
GetAllCollectionManifestsCallback is invoked upon completion of a GetAllCollectionManifests operation.
GetAndLockCallback is invoked upon completion of a GetAndLock operation.
GetAndTouchCallback is invoked upon completion of a GetAndTouch operation.
GetCallback is invoked upon completion of a Get operation.
GetCollectionIDCallback is invoked upon completion of a GetCollectionID operation.
GetCollectionManifestCallback is invoked upon completion of a GetCollectionManifest operation.
GetFailoverLogCallback is invoked with the results of `GetFailoverLog` operations.
GetMetaCallback is invoked upon completion of a GetMeta operation.
GetRandomCallback is invoked upon completion of a GetRandom operation.
GetReplicaCallback is invoked upon completion of a GetReplica operation.
GetVBucketSeqnosCallback is invoked with the results of `GetVBucketSeqnos` operations.
LogLevel specifies the severity of a log message.
LogRedactLevel specifies the degree with which to redact the logs.
LookupInCallback is invoked upon completion of a LookupIn operation.
MutateInCallback is invoked upon completion of a MutateIn operation.
N1QLQueryCallback is invoked upon completion of a N1QLQuery operation.
ObserveCallback is invoked upon completion of a Observe operation.
ObserveVbCallback is invoked upon completion of a ObserveVb operation.
OpenStreamCallback is invoked with the results of `OpenStream` operations.
PingCallback is invoked upon completion of a PingKv operation.
PingState is the current state of a endpoint used in a PingResult.
RangeScanCancelCallback is invoked upon completion of a RangeScanCancel operation.
RangeScanContinueActionCallback is invoked upon receipt of a RangeScanContinue response representing an action.
RangeScanContinueDataCallback is invoked upon receipt of a RangeScanContinue response containing data.
RangeScanCreateCallback is invoked upon completion of a RangeScanCreate operation.
No description provided by the author
SearchQueryCallback is invoked upon completion of a SearchQuery operation.
SeqNo is a sequential mutation number indicating the order and precise position of a write that has occurred.
ServiceType specifies a particular Couchbase service type.
SetMetaCallback is invoked upon completion of a SetMeta operation.
SnapshotState represents the state of a particular cluster snapshot.
No description provided by the author
StatsCallback is invoked upon completion of a Stats operation.
StoreCallback is invoked upon completion of a Add, Set or Replace operation.
TouchCallback is invoked upon completion of a Touch operation.
TransactionAttemptState represents the current State of a transaction.
TransactionCommitCallback describes a callback for a completed commit operation.
TransactionDurabilityLevel specifies the durability level to use for a mutation.
TransactionErrorClass describes the reason that a transaction error occurred.
TransactionErrorReason is the reason why a transaction should be failed.
TransactionGetCallback describes a callback for a completed Get or GetOptional operation.
TransactionRollbackCallback describes a callback for a completed rollback operation.
TransactionsBucketAgentProviderFn is a function used to provide an agent for a particular bucket by name.
TransactionsLostCleanupATRLocationProviderFn is a function used to provide a list of ATRLocations for lost transactions cleanup.
TransactionStagedMutationType represents the type of a mutation performed in a transaction.
TransactionStoreCallback describes a callback for a completed Replace operation.
UnlockCallback is invoked upon completion of a Unlock operation.
VbUUID represents a unique identifier for a particular vbucket history.
ViewQueryCallback is invoked upon completion of a ViewQuery operation.
WaitForConfigSnapshotCallback is invoked upon completion of a WaitForConfigSnapshot operation.
WaitUntilReadyCallback is invoked upon completion of a WaitUntilReady operation.