Couchbase C++ SDK 1.2.0 (rev. c2439a4)
Loading...
Searching...
No Matches
cbc-remove - Remove Documents on the Server

NAME

cbc remove - remove document on the server

SYNOPSIS

cbc remove [options] <id>...
cbc remove [options] --inlined-cas-separator=/ <id>/<cas>...
cbc remove (-h|--help)

DESCRIPTION

Remove one or more documents on the server.

By default the tool will remove document if it exists on the server, but it is also possible to use optimistic locking by providing CAS with <id> using --inlined-cas-separator switch. In this case the document will be only removed if the CAS matches the one associated with the document on the server.

OPTIONS

-h,--help
Print this help message and exit
--verbose
Include more context and information where it is applicable.
--bucket-name TEXT
Name of the bucket. [default: default]
--scope-name TEXT
Name of the scope. [default _default]
--collection-name TEXT
Name of the collection. [default: _default]
--inlined-cas-separator TEXT
Specify CAS with the key for optimistic locking (use '0x' prefix for base-16 encoding).
--inlined-keyspace
Extract bucket, scope, collection and key from the IDs (captures will be done with /^(.*?):(.*?)\.(.*?):(.*)$/).
--json-lines
Use JSON Lines format (https://jsonlines.org) to print results.

DURABILITY

Extra persistency requirements. Either --durability-level or combination of --persist-to and --replicate-to switches is allowed.

--durability-level TEXT
Durability level for the server. (allowed values: none, majority, majority_and_persist_to_active, persist_to_majority)

The following switches implement client-side poll-based durability requirements.

--persist-to TEXT
Number of the nodes that have to have the document persisted. (allowed values: none, active, one, two, three, four)
--replicate-to TEXT
Number of the nodes that have to have the document replicated. (allowed values: none, one, two, three)

LOGGER OPTIONS

--log-level=LEVEL
Log level (allowed values are: trace, debug, info, warning, error, critical, off). [default: off]
--log-output=PATH
File to send logs (when is not set, logs will be written to STDERR).
--log-protocol=PATH
File to send protocol logs.

CONNECTION OPTIONS

--connection-string=STRING
Connection string for the cluster. [default: couchbase://localhost]
--username=STRING
Username for the cluster. [default: Administrator]
--password=STRING
Password for the cluster. [default: password]
--certificate-path=STRING
Path to the certificate.
--key-path=STRING
Path to the key.
--ldap-compatible
Whether to select authentication mechanism that is compatible with LDAP.
--configuration-profile=STRING
Apply configuration profile (might override other switches). (available profiles: wan_development)

SECURITY OPTIONS

--disable-tls
Whether to disable TLS.
--trust-certificate-path=STRING
Path to the trust certificate bundle.
--tls-verify-mode=MODE
Path to the certificate (allowed values: peer, none). [default: peer]

TIMEOUT OPTIONS

--bootstrap-timeout=DURATION
Timeout for overall bootstrap of the SDK. [default: 10000ms]
--connect-timeout=DURATION
Timeout for socket connection. [default: 10000ms]
--resolve-timeout=DURATION
Timeout to resolve DNS address for the sockets. [default: 2000ms]
--key-value-timeout=DURATION
Timeout for Key/Value operations. [default: 2500ms]
--key-value-durable-timeout=DURATION
Timeout for Key/Value durable operations. [default: 10000ms]
--query-timeout=DURATION
Timeout for Query service. [default: 75000ms]
--search-timeout=DURATION
Timeout for Search service. [default: 75000ms]
--eventing-timeout=DURATION
Timeout for Eventing service. [default: 75000ms]
--analytics-timeout=DURATION
Timeout for Analytics service. [default: 75000ms]
--view-timeout=DURATION
Timeout for View service. [default: 75000ms]
--management-timeout=DURATION
Timeout for management operations. [default: 75000ms]

COMPRESSION OPTIONS

--disable-compression
Whether to disable compression.
--compression-minimum-size=INTEGER
The minimum size of the document (in bytes), that will be compressed. [default: 32]
--compression-minimum-ratio=FLOAT
The minimum compression ratio to allow compressed form to be used. [default: 0.83]

DNS-SRV OPTIONS

--dns-srv-timeout=DURATION
Timeout for DNS SRV requests. [default: 500ms]
--dns-srv-nameserver=STRING
Hostname of the DNS server where the DNS SRV requests will be sent.
--dns-srv-port=INTEGER
Port of the DNS server where the DNS SRV requests will be sent.

NETWORK OPTIONS

--tcp-keep-alive-interval=DURATION
Interval for TCP keep alive. [default: 60000ms]
--config-poll-interval=DURATION
How often the library should poll for new configuration. [default: 2500ms]
--idle-http-connection-timeout=DURATION
Period to wait before calling HTTP connection idle. [default: 4500ms]

TRANSACTIONS OPTIONS

--transactions-durability-level=LEVEL
Durability level of the transaction (allowed values: none, majority, majority_and_persist_to_active, persist_to_majority). [default: majority]
--transactions-timeout=DURATION
Timeout of the transaction. [default: 15000ms]
--transactions-metadata-bucket=STRING
Bucket name where transaction metadata is stored.
--transactions-metadata-scope=STRING
Scope name where transaction metadata is stored. [default: _default]
--transactions-metadata-collection=STRING
Collection name where transaction metadata is stored. [default: _default]
--transactions-query-scan-consistency=MODE
Scan consistency for queries in transactions (allowed values: not_bounded, request_plus). [default: request_plus]
--transactions-cleanup-ignore-lost-attempts
Do not cleanup lost attempts.
--transactions-cleanup-ignore-client-attempts
Do not cleanup client attempts.
--transactions-cleanup-window=DURATION
Cleanup window. [default: 60000ms]

METRICS OPTIONS

--disable-metrics
Disable collecting and reporting metrics.
--metrics-emit-interval=DURATION
Interval to emit metrics report on INFO log level. [default: 600000ms]

TRACING OPTIONS

--disable-tracing
Disable collecting and reporting trace information.
--tracing-orphaned-emit-interval=DURATION
Interval to emit report about orphan operations. [default: 10000ms]
--tracing-orphaned-sample-size=INTEGER
Size of the sample of the orphan report. [default: 64]
--tracing-threshold-emit-interval=DURATION
Interval to emit report about operations exceeding threshold. [default: 10000ms]
--tracing-threshold-sample-size=INTEGER
Size of the sample of the threshold report. [default: 64]
--tracing-threshold-key-value=DURATION
Threshold for Key/Value service. [default: 500ms]
--tracing-threshold-query=DURATION
Threshold for Query service. [default: 1000ms]
--tracing-threshold-search=DURATION
Threshold for Search service. [default: 1000ms]
--tracing-threshold-analytics=DURATION
Threshold for Analytics service. [default: 1000ms]
--tracing-threshold-management=DURATION
Threshold for Management operations. [default: 1000ms]
--tracing-threshold-eventing=DURATION
Threshold for Eventing service. [default: 1000ms]
--tracing-threshold-view=DURATION
Threshold for View service. [default: 1000ms]

BEHAVIOR OPTIONS

--user-agent-extra=STRING
Append extra string SDK identifiers. [default: cbc].
--network=STRING
Network (a.k.a. Alternate Addresses) to use. [default: auto]
--show-queries
Log queries on INFO level.
--enable-clustermap-notifications
Allow server to send notifications when cluster configuration changes.
--disable-mutation-tokens
Do not request Key/Value service to send mutation tokens.
--disable-unordered-execution
Disable unordered execution for Key/Value service.

ENVIRONMENT

CBC_LOG_LEVEL
Overrides default value for --log-level.
CBC_CONNECTION_STRING
Overrides default value for --connection-string.
CBC_USERNAME
Overrides default value for --username.
CBC_PASSWORD
Overrides default value for --password.

EXAMPLES

  1. Remove document the default collection of the default bucket with the key foo:
    cbc remove foo
    
  2. Remove document the default collection of the default bucket with the key foo, and CAS 0x184c1c1c56770000:
    cbc remove --inlined-cas-separator=/ foo/0x184c1c1c56770000
    
  3. Remove document in the scope myapp, collection users of the bucket accounts:
    cbc remove --bucket-name=accounts --scope-name=myapp --collection=users user_1
    
  4. All above, but inline bucket, scope, collection and value into the <id> to store two documents:
    cbc remove --inlined-keyspace \
         accounts:myapp1:users:user_1 \
         accounts:myapp2:users:user_2
    
  5. Remove document and ensure that change has been propagated to the majority of the replica set:
    cbc remove --durability-level=majority foo
    
  6. Wait until document will be removed on the disk on at least one node from the replica set, but replicated to two nodes (and give it maximum time of 10 seconds to wait):
    cbc remove --key-value-timeout=10s --persist-to=one --replicate-to=two foo
    

SEE ALSO

cbc, cbc-get, cbc-upsert.