Skip to content
100644 121 lines (88 sloc) 4.47 KB
55a9d4c @algernon NEWS update
authored May 7, 2011
1 #+STARTUP: indent showall -*- org -*-
f7ed02d @algernon NEWS: Added a note about the mongo_packet_recv() bugfix.
authored Jun 18, 2011
3 * 0.1.2 - <UNRELEASED>
5 ** Bugfix: mongo_packet_recv() waits for all data.
6 Previously, mongo_packet_recv() did not wait for all data to arrive,
7 and returned whatever already arrived at the time of reading.
9 This has been corrected, mongo_packet_recv() correctly blocks now.
fc77655 @algernon mongo-sync: Support passive secondaries.
authored Jun 18, 2011
11 ** Implemented support for passive secondaries.
12 Support was added for passive secondaries, they're now automatically
13 discovered too.
f824c89 @algernon NEWS: Added a short note about the index functions.
authored Jun 18, 2011
15 ** New feature: Index handling functions
16 Implemented some helper functions to create and delete indexes.
b6135c8 @algernon Release v0.1.1.
authored Jun 16, 2011
18 * 0.1.1 - <2011-06-16 Thu>
8846950 @algernon sync-cursor: New cursor-based iterator API.
authored May 29, 2011
20 ** Cursor-based query iterator API
21 The new cursor-based query iterator API makes it possible to grab the
22 results of a mongo_sync_cmd_query(), and conveniently iterate over the
23 results, hiding the get_more() calls underneath.
25 The implementation is clever enough to only query the database when it
26 needs to, and when it does, query in bulk (asking for the same amount
27 of documents that the last query returned).
29 Thanks to Federico Rodriguez <> for the suggestion.
f91579f @algernon NEWS update.
authored May 29, 2011
31 ** New function: bson_validate_key()
32 With this new function, one can validate BSON keys: whether they can
33 contain dots (allowed when using dot-notation, forbidden otherwise),
34 or whether they start with a '$' sign.
36 It is up to the application developer to decide when to validate a
37 key, and what restrictions make sense in the given context.
39 The function does NOT do UTF-8 validation, that is completely left up
40 to the application developer.
c17a0f4 @algernon bson: Add bson_cursor_find_next ().
authored Jun 5, 2011
42 ** New function: bson_cursor_find_next()
43 When we know that key G always comes after key A, but we do not care
44 how far apart they may be, and we do not want to use a separate cursor
45 (due to, for example, performance reasons), this new function can
46 help: unlike bson_find(), this will start scanning from the current
47 cursor position.
67e8fd8 @algernon NEWS: Added a few words about bson_stream_doc_size().
authored Jun 15, 2011
49 ** New function: bson_stream_doc_size()
50 A little helper function to help determine the size of a BSON document
51 when it's only available as a bytestream. This is mostly for use with
52 bson_new_from_data().
61d2dba @algernon NEWS: Added a note about symbol versioning.
authored Jun 11, 2011
54 ** Symbol versioning
55 The symbols of the library can now be versioned, if configured with
56 the --with-versioned-symbols configure flag (not enabled by default).
a1833df @algernon Release v0.1.0.
authored May 25, 2011
58 * 0.1.0 - <2011-05-25 Wed>
60 ** Shared library
61 The configure script now defaults to enabling shared library building
62 by default (along with a static library).
64 ** Bug fixes
65 The pkg-config file was setting an incorrect include directory in it's
66 Cflags. This is now fixed.
68 ** C++ Compatibility
69 The public headers are now guarded by extern "C" {} wrappers, so that
70 they can be included in C++ projects.
72 ** Performance enhancements
73 A minor performance issue was corrected in the BSON code, that had the
74 possibility of forcing unneccessary memory allocations. The library
75 now allocates the proper amount of memory at the soonest time
76 possible, so it doesn't have to grow it later on unnecessarily.
78 Anoter performance issue was corrected in the BSON library:
79 bson_find() was comparing key names in BSON objects with the sought
80 for key using strcmp(), which was unacceptably slow when dealing with
81 BSON objects that have a lot of keys. We now use memcmp(), which means
82 we don't have to traverse the sought for key all the time.
f4ae2c0 @algernon Preparing for 0.0.2.
authored May 7, 2011
84 * 0.0.2 - <2011-05-07 Sat>
2d0a7fd @algernon NEWS: Started adding 0.0.2 items.
authored Apr 25, 2011
86 ** Replica set seeding support
87 It is now possible to add seeds to a connection, so that the library
88 can try connecting to those in case automatic discovery fails (or if
89 the seeds are hidden).
91 ** Failover redesign
92 Instead of preemptively pinging & checking for a master before each
93 and every command, the library does so only upon errors. This way,
94 when everything's working as expected, there is no extra
95 overhead. Yet, if things go wrong, failover will still work.
97 By design, automatic failover only occurs when an error is detected
98 during a write operation. When an error occurs during read, it will be
99 propagated back to the application.
101 Automatic failover is disabled by default, and can be turned on via
102 the mongo_sync_conn_set_auto_reconnect() function.
104 ** safe-mode support
105 With safe mode enabled, extra care will be taken to ensure that data
106 gets to the server, and that the library does everything within its
107 power to maintain a connection.
109 This means that after insert and update operations, the library will
110 issue a getLastError command, and only return successfully if that
111 command did not signal an error.
113 Safe-mode also enables the previously default preemptive connection
114 checks (along with the post-mortem failover).
116 Safe-mode is off by default.
f4ae2c0 @algernon Preparing for 0.0.2.
authored May 7, 2011
118 * 0.0.1 - <2011-04-10 Sun>
9a5c674 @algernon Preparing for v0.0.1.
authored Apr 10, 2011
120 Initial public release.
Something went wrong with that request. Please try again.