Skip to content

Releases: couchbase/libcouchbase

2.10.9

03 Mar 11:05
2.10.9

Choose a tag to compare

API documentation: https://docs.couchbase.com/sdk-api/couchbase-c-client-2.10.9

  • CCBC-1130: Do not wipe new/reused pipelines. Fixes invalid memory access error.

3.0.7

16 Dec 10:40
3.0.7

Choose a tag to compare

API documentation: https://docs.couchbase.com/sdk-api/couchbase-c-client-3.0.7

  • CCBC-1350: Implement an option for cbc-n1qlback to control prepared/adhoc switch
  • CCBC-1345: Ensure all KV sockets select bucket on lcb_open
  • CCBC-1348: Include bucket name into diag report
  • CCBC-1308: Define FATAL and TRANSIENT classes for errors. Also defines corresponding macros for easy access LCB_ERROR_IS_TRANSIENT and LCB_ERROR_IS_FATAL
  • CCBC-1342: Check if collections supported by server before using them.
  • CCBC-1334: Preserve status of KV protocol response for retry queue
  • CCBC-1339: Do not relocate get with replica on failover. The library should not relocate replica reads when new configuration applied.
  • CCBC-1344: Consume response after retried command to avoid logging the command as "timed out"
  • CCBC-1343: Do not schedule NMV immediately by default and use retry strategy instead.
  • CCBC-1335: Fix next timeout computation on requesting config using operation_timeout instead of config_node_timeout
  • CCBC-1337: Expose setting for to control default search timeout
  • CCBC-1331: Fix error at bootstrap callback, now it returns original error code, that caused the bootstrap failure.
  • CCBC-1333: Allow setting lcb_cmdget_locktime to zero to use server default time.
  • CCBC-1324: define HTTP type for Eventing management
  • Retry operations when the node is not ready
  • Report LCB_ERR_BUCKET_NOT_FOUND if Key/Value service is not configured
  • Update error codes for Query. Translate code 4300 to LCB_ERR_PLANNING_FAILURE and 5000 to LCB_ERR_INTERNAL_SERVER_FAILURE by default.
  • Fix collection validation, it should pass empty string as valid collection specification element.
  • Remove verbosity and mcversions commands. These parts of API are non-standard and volatile
  • Bundle HdrHistogram_c v0.11.2 and allow to fall back to it
  • Build and stability improvements

3.0.6

21 Oct 10:36
3.0.6

Choose a tag to compare

API documentation: https://docs.couchbase.com/sdk-api/couchbase-c-client-3.0.6

  • CCBC-1311: Implement create_as_deleted subdoc feature.
  • CCBC-1263: Update ping to report analytics as analytics service instead of query
  • CCBC-1175: Allow to specify timeout for lcb_ping
  • CCBC-1262: Add accessor for report_id in ping report
  • CCBC-1176: Rename "scope" to "namespace" in ping report (also deprecate lcb_respping_result_scope in favour to lcb_respping_result_namespace)
  • CCBC-1261: Set namespace length of service in ping report to zero if not applicable
  • CCBC-1194: Add extra checks for socket state in lcb_diag to avoid invalid access issues
  • CCBC-1314: Extra checks for socket state in lcb_ping to avoid invalid access issues
  • CCBC-1316: Fix two-step bootstrap (lcb_connect + lcb_open) for memcached bucket.

2.10.8

22 Sep 18:18
2.10.8

Choose a tag to compare

API documentation: http://docs.couchbase.com/sdk-api/couchbase-c-client-2.10.8

  • CCBC-1298: allow to adjust TCP keepalive settings

    • tcp_keepcnt (LCB_CNTL_TCP_KEEPCNT): the maximum number of keepalive probles
    • tcp_keepintvl (LCB_CNTL_KEEPINTVL): the time (in seconds) between individual probes
    • tcp_keepidle (LCB_CNTL_TCP_KEEPIDLE): the time (in seconds) the connection need to remain idle before TCP start sending probes.
  • Detect configuration change when replica indexes changed. libcouchbase will apply new configuration, when node is re-added after failover.

  • Do not re-arm config provider timer for existing connection. Each request_config operation has its own timer associated with the command.

3.0.5

21 Sep 12:26
3.0.5

Choose a tag to compare

API documentation: https://docs.couchbase.com/sdk-api/couchbase-c-client-3.0.5

  • CCBC-1307: allow to select any mechanisms for SASL regardless network protocol being used.
    But by default, try to avoid downgrading to PLAIN on non-TLS connections. Also the change allows to specify list of
    preferred mechanisms instead of only one (use comma in the value of sasl_mech_force connection string option).
  • CCBC-1276: allow to hint flex index usage in query options
  • CCBC-1312: fix return values for lcb_cmdquery_scope_*
  • CCBC-1313: replace std::random_shuffle with std::shuffle (fixes build of cbc-n1qlback tool)

3.0.4

26 Aug 11:21
3.0.4

Choose a tag to compare

API documentation: https://docs.couchbase.com/sdk-api/couchbase-c-client-3.0.4

  • CCBC-1281: Implement scope qualifier for queries
  • CCBC-1301: expose cmake option to help dissecting TLS traffic
  • Detect configuration change when replica indexes changed.

3.0.3

27 Jul 11:35
3.0.3

Choose a tag to compare

API documentation: https://docs.couchbase.com/sdk-api/couchbase-c-client-3.0.3

  • CCBC-1265: enable out of order execution by default
  • CCBC-1189: Validate collection and scope names early. The library will return error if the collection name is not valid without sending command to the server.
  • CCBC-1278: Fix stripping payload over TLS connection. The library might propagate zero return code from recv() even when previous calls of recv() successfully transferred bytes to SSL context. In this case we might lose these trailing bytes and just close the socket.
  • CCBC-1264: Fix calculating key size when durability level specified
  • CCBC-1258: fix port order in vbucket diff info message
  • CCBC-1274: Fix pointer casting in HTTP callback of cbc tool.
  • CCBC-1167: Fix tests build on MacOS
  • CCBC-1248: Always request error map feature and send HELLO message to speedup bootstrap
  • Implement tick for IOCP plugin on Windows
  • Improved build on Windows (fixed static build, and PDB installation)
  • Fix collections issues for future server release

2.10.7

17 Jun 14:09
2.10.7

Choose a tag to compare

API documentation: http://docs.couchbase.com/sdk-api/couchbase-c-client-2.10.7

  • CCBC-1234: Fixed SRV resolution to work with large record sizes. In some cases, the answer records exceed the default answer buffer size causing SRV lookups to fail on otherwise correctly configured clusters. This specifically occured with Couchbase Cloud.

  • CCBC-1233: Updated RTO to independently specify operation_name (in accorance to RFC).

  • CCBC-1258: Fix port order in vbucket diff info log message.

  • MB-37768: Don't override CMAKE_INSTALL_RPATH

  • CCBC-1232: Fix build on CentOS 6

3.0.2

10 Jun 07:58
3.0.2

Choose a tag to compare

  • CCBC-1200: Retry bootstrap on missing bucket until timeout. Bootstrap timeout controlled by "config_total_timeout" in connection string or LCB_CNTL_CONFIGURATION_TIMEOUT
  • CCBC-1190: Fix automatic retries for temporary failures from the server.
  • CCBC-1158: Fix retrying on unknown collection.
  • CCBC-1254: Use separate option for default timeout of analytics queries (connection string "analytics_timeout").
  • CCBC-1178: Do not allow to set CAS for upsert and insert operations
  • CCBC-1156: Fix enum value for analytics type of HTTP request
  • CCBC-1251: No longer log error when using GCCCP on pre-6.5
  • CCBC-1234: Fixed SRV resolution to work with large record sizes.
  • CCBC-1222: Tracing thresholds for query and search in connection strings. Now they are correctly spelled as tracing_threshold_search and tracing_threshold_query.
  • CCBC-1187: Ensure lcb_respexists_is_found does not true for deleted documents.
  • CCBC-1233: Updated RTO to independently specify operation_name.
  • CCBC-1205: Do not include trailing zero for endpoint length for KV context
  • CCBC-1215: Fixed segfault in exists calls.
  • CCBC-1218: Fixed intermittent segfault in client durable store
  • Documentation issues addressed (CCBC-1240, CCBC-1243, CCBC-1241, CCBC-1245)

3.0.1

08 Apr 13:29
3.0.1

Choose a tag to compare

  • CCBC-1188: cbc-pillowfight: fixed --collection switch.
  • CCBC-1173: Fix exporting lcb_cmdquery_consistency_token_for_keyspace
  • CCBC-1168: expose max_parallelism for query
  • CCBC-1171: expose profile option for query
  • CCBC-1170: expose scan_wait option for query
  • CCBC-1159: Fix error codes for Management API
  • MB-37768: Don't override CMAKE_INSTALL_RPATH.
  • CCBC-1208: Add a fail-fast retry strategy.
  • CCBC-1209: Rename functions of embedded http_parser to avoid name clash.
  • Remove use of deprecated function std::random_shuffle. std::random_shuffle is deprecated in C++14, removed in C++17. Replace with std::shuffle.
  • Fixed several issues reported by coverity