Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

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