Skip to content

Commit a48eb43

Browse files
authored
CDRIVER-5947 remove deprecated collection API (#1958)
* remove `mongoc_collection_find` * remove `mongoc_collection_insert_bulk` * remove `mongoc_collection_create_bulk_operation` * remove `mongoc_collection_get_last_error` * remove `mongoc_collection_stats` * remove `mongoc_collection_validate` * remove `$query` tests * remove test with `$query` ** Unlike `mongoc_collection_find`, `mongoc_collection_find_with_opts` does not support using `$query` to pass filter and options.
1 parent 7a05b03 commit a48eb43

30 files changed

+94
-2768
lines changed

NEWS

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,11 +73,27 @@ Unreleased (2.0.0)
7373
* `mongoc_bulk_operation_delete_one` is removed. Use `mongoc_bulk_operation_remove_one` instead.
7474
* `mongoc_bulk_operation_get_hint` is removed. Use `mongoc_bulk_operation_get_server_id` instead.
7575
* `mongoc_bulk_operation_set_hint` is removed. Use `mongoc_bulk_operation_set_server_id` instead.
76+
* Deprecated `mongoc_apm_command_*_get_server_connection_id` functions are removed. Use `mongoc_apm_command_*_get_server_connection_id_int64` instead.
7677
* Deprecated index management API has been removed:
7778
* `mongoc_collection_create_index_with_opts`, `mongoc_collection_create_index`, and `mongoc_collection_ensure_index` are removed. Use `mongoc_collection_create_indexes_with_opts` instead.
7879
* `mongoc_index_opt_t`, `mongoc_index_opt_geo_t` `mongoc_index_opt_wt_t` are removed. Pass options using `bson_t` to `mongoc_collection_create_indexes_with_opts` instead.
7980
* `mongoc_collection_find_indexes` is removed. Use `mongoc_collection_find_indexes_with_opts` instead.
8081
* See [MongoDB documentation](https://www.mongodb.com/docs/languages/c/c-driver/current/indexes/) for working with indexes.
82+
* `mongoc_collection_find` is removed. Use `mongoc_collection_find_with_opts` instead.
83+
* `mongoc_collection_insert_bulk` is removed. Use `mongoc_collection_insert_many` instead.
84+
* `mongoc_collection_create_bulk_operation` is removed. Use `mongoc_collection_create_bulk_operation_with_opts` instead.
85+
* `mongoc_collection_get_last_error` is removed. To get results from write operations, instead use:
86+
- `mongoc_collection_update_one`
87+
- `mongoc_collection_update_many`
88+
- `mongoc_collection_replace_one`
89+
- `mongoc_collection_delete_one`
90+
- `mongoc_collection_delete_many`
91+
- `mongoc_collection_insert_one`
92+
- `mongoc_collection_insert_many`
93+
- `mongoc_bulkwrite_t`
94+
- `mongoc_bulk_operation_t`
95+
* `mongoc_collection_stats` is removed. Use the [$collStats aggregation pipeline stage](https://www.mongodb.com/docs/manual/reference/operator/aggregation/collStats/) with `mongoc_collection_aggregate` instead.
96+
* `mongoc_collection_validate` is removed. Run the [validate](https://www.mongodb.com/docs/manual/reference/command/validate/) command directly with `mongoc_client_read_command_with_opts` instead.
8197

8298
### Forwarding headers (`#include <bson.h>` and `#include <mongoc.h>`)
8399

build/generate-future-functions.py

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -284,13 +284,6 @@
284284
[param("mongoc_collection_ptr", "collection"),
285285
param("const_bson_ptr", "opts")]),
286286

287-
future_function("bool",
288-
"mongoc_collection_stats",
289-
[param("mongoc_collection_ptr", "collection"),
290-
param("const_bson_ptr", "options"),
291-
param("bson_ptr", "stats"),
292-
param("bson_error_ptr", "error")]),
293-
294287
future_function("bool",
295288
"mongoc_collection_insert_many",
296289
[param("mongoc_collection_ptr", "collection"),
@@ -334,15 +327,6 @@
334327
param("bson_ptr", "reply"),
335328
param("bson_error_ptr", "error")]),
336329

337-
future_function("bool",
338-
"mongoc_collection_insert_bulk",
339-
[param("mongoc_collection_ptr", "collection"),
340-
param("mongoc_insert_flags_t", "flags"),
341-
param("const_bson_ptr_ptr", "documents"),
342-
param("uint32_t", "n_documents"),
343-
param("const_mongoc_write_concern_ptr", "write_concern"),
344-
param("bson_error_ptr", "error")]),
345-
346330
future_function("bool",
347331
"mongoc_cluster_run_command_parts",
348332
[param("mongoc_cluster_ptr", "cluster"),

src/libmongoc/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1042,7 +1042,6 @@ set (test-libmongoc-sources
10421042
${PROJECT_SOURCE_DIR}/tests/test-mongoc-cluster.c
10431043
${PROJECT_SOURCE_DIR}/tests/test-mongoc-cmd.c
10441044
${PROJECT_SOURCE_DIR}/tests/test-mongoc-collection-find-with-opts.c
1045-
${PROJECT_SOURCE_DIR}/tests/test-mongoc-collection-find.c
10461045
${PROJECT_SOURCE_DIR}/tests/test-mongoc-collection.c
10471046
${PROJECT_SOURCE_DIR}/tests/test-mongoc-command-logging-and-monitoring.c
10481047
${PROJECT_SOURCE_DIR}/tests/test-mongoc-command-monitoring.c

src/libmongoc/doc/errors.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,11 +75,11 @@ Many C Driver functions report errors by returning ``false`` or -1 and filling o
7575
+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
7676
| ``MONGOC_ERROR_SERVER`` | `Error code from server`_. | :ref:`Error API Version 2 <error_api_version>`: Server error from a command. The server error message is in ``message``. |
7777
+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
78-
| ``MONGOC_ERROR_COLLECTION`` | ``MONGOC_ERROR_COLLECTION_INSERT_FAILED``, ``MONGOC_ERROR_COLLECTION_UPDATE_FAILED``, ``MONGOC_ERROR_COLLECTION_DELETE_FAILED``. | Invalid or empty input to :symbol:`mongoc_collection_insert_one`, :symbol:`mongoc_collection_insert_bulk`, :symbol:`mongoc_collection_update_one`, :symbol:`mongoc_collection_update_many`, :symbol:`mongoc_collection_replace_one`, :symbol:`mongoc_collection_delete_one`, or :symbol:`mongoc_collection_delete_many`. |
78+
| ``MONGOC_ERROR_COLLECTION`` | ``MONGOC_ERROR_COLLECTION_INSERT_FAILED``, ``MONGOC_ERROR_COLLECTION_UPDATE_FAILED``, ``MONGOC_ERROR_COLLECTION_DELETE_FAILED``. | Invalid or empty input to :symbol:`mongoc_collection_insert_one`, :symbol:`mongoc_collection_insert_many`, :symbol:`mongoc_collection_update_one`, :symbol:`mongoc_collection_update_many`, :symbol:`mongoc_collection_replace_one`, :symbol:`mongoc_collection_delete_one`, or :symbol:`mongoc_collection_delete_many`. |
7979
+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
80-
| ``MONGOC_ERROR_COLLECTION`` | `Error code from server`_. | :ref:`Error API Version 1 <error_api_version>`: Server error from :symbol:`mongoc_collection_insert_one`, :symbol:`mongoc_collection_insert_bulk`, :symbol:`mongoc_collection_update_one`, :symbol:`mongoc_collection_update_many`, :symbol:`mongoc_collection_replace_one`, |
80+
| ``MONGOC_ERROR_COLLECTION`` | `Error code from server`_. | :ref:`Error API Version 1 <error_api_version>`: Server error from :symbol:`mongoc_collection_insert_one`, :symbol:`mongoc_collection_insert_many`, :symbol:`mongoc_collection_update_one`, :symbol:`mongoc_collection_update_many`, :symbol:`mongoc_collection_replace_one`, |
8181
+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
82-
| ``MONGOC_ERROR_SERVER`` | `Error code from server`_. | :ref:`Error API Version 2 <error_api_version>`: Server error from :symbol:`mongoc_collection_insert_one`, :symbol:`mongoc_collection_insert_bulk`, :symbol:`mongoc_collection_update_one`, :symbol:`mongoc_collection_update_many`, :symbol:`mongoc_collection_replace_one`, |
82+
| ``MONGOC_ERROR_SERVER`` | `Error code from server`_. | :ref:`Error API Version 2 <error_api_version>`: Server error from :symbol:`mongoc_collection_insert_one`, :symbol:`mongoc_collection_insert_many`, :symbol:`mongoc_collection_update_one`, :symbol:`mongoc_collection_update_many`, :symbol:`mongoc_collection_replace_one`, |
8383
+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
8484
| ``MONGOC_ERROR_GRIDFS`` | ``MONGOC_ERROR_GRIDFS_CHUNK_MISSING`` | The GridFS file is missing a document in its ``chunks`` collection. |
8585
+-----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
@@ -165,7 +165,7 @@ To fix this flaw while preserving backward compatibility, the C Driver 1.4 intro
165165
| and other command helper functions | | |
166166
+------------------------------------------------------+----------------------------------------+----------------------------------------+
167167
| :symbol:`mongoc_collection_insert_one` | ``MONGOC_ERROR_COMMAND`` | ``MONGOC_ERROR_SERVER`` |
168-
| :symbol:`mongoc_collection_insert_bulk` | | |
168+
| :symbol:`mongoc_collection_insert_many` | | |
169169
| :symbol:`mongoc_collection_update_one` | | |
170170
| :symbol:`mongoc_collection_update_many` | | |
171171
| :symbol:`mongoc_collection_replace_one` | | |

src/libmongoc/doc/mongoc_collection_create_bulk_operation.rst

Lines changed: 0 additions & 61 deletions
This file was deleted.

src/libmongoc/doc/mongoc_collection_find.rst

Lines changed: 0 additions & 159 deletions
This file was deleted.

0 commit comments

Comments
 (0)