Skip to content

Commit 11eedee

Browse files
author
rstam
committed
Added draft change logs and release notes.
1 parent 2a050c5 commit 11eedee

File tree

4 files changed

+241
-0
lines changed

4 files changed

+241
-0
lines changed

CSharpDriver-2010.sln

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Release Notes", "Release No
2828
Release Notes\Change Log v1.4.2-Driver.txt = Release Notes\Change Log v1.4.2-Driver.txt
2929
Release Notes\Change Log v1.5-Bson.txt = Release Notes\Change Log v1.5-Bson.txt
3030
Release Notes\Change Log v1.5-Driver.txt = Release Notes\Change Log v1.5-Driver.txt
31+
Release Notes\Change Log v1.6-Bson.txt = Release Notes\Change Log v1.6-Bson.txt
32+
Release Notes\Change Log v1.6-Driver.txt = Release Notes\Change Log v1.6-Driver.txt
3133
Release Notes\Release Notes v0.11.txt = Release Notes\Release Notes v0.11.txt
3234
Release Notes\Release Notes v0.7.txt = Release Notes\Release Notes v0.7.txt
3335
Release Notes\Release Notes v0.9.txt = Release Notes\Release Notes v0.9.txt
@@ -40,6 +42,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Release Notes", "Release No
4042
Release Notes\Release Notes v1.4.2.md = Release Notes\Release Notes v1.4.2.md
4143
Release Notes\Release Notes v1.4.md = Release Notes\Release Notes v1.4.md
4244
Release Notes\Release Notes v1.5.md = Release Notes\Release Notes v1.5.md
45+
Release Notes\Release Notes v1.6.md = Release Notes\Release Notes v1.6.md
4346
EndProjectSection
4447
EndProject
4548
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DriverUnitTestsVB", "DriverUnitTestsVB\DriverUnitTestsVB.vbproj", "{19ED9AD5-A2CA-4F1B-9BE4-96450382F404}"
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
BSON library changes from 1.5 to 1.6
2+
3+
BsonSerializerAttribute.cs
4+
new attribute to configure a serializer for a class or a member
5+
6+
ReadOnlyCollectionSerializer.cs
7+
new serializer for ReadOnlyCollection
8+
9+
BsonClassMapSerializer.cs
10+
class is now public again (so client serializers can delegate to it if they want)
11+
12+
BsonDefaultSerializationProvider.cs
13+
special handling for ReadOnlyCollection<T>
14+
15+
BsonDocumentBackedClass.cs
16+
new abstract base class for helper classes that decode a BSON document
17+
18+
BsonDocumentBackedClassSerializer.cs
19+
new abstract base class for BsonDocumentBackedClass serializers
20+
21+
BsonSerializationInfo.cs
22+
new helper methods: DeserializeValue, SerializeValue, SerializeValues
23+
used to be in BsonSerializationInfoHelper (in the driver)
24+
25+
BsonSerializer.cs
26+
LookupSerializer now supports the BsonSerializerAttribute
Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
1+
C# driver changes from 1.5 to 1.6
2+
3+
QueryBuilder.cs
4+
QueryBuilderTyped.cs
5+
Mod arguments changed from int to long
6+
7+
AggregateResult.cs
8+
new class
9+
represents the result of an aggregate command
10+
11+
IsMasterResult.cs
12+
new class
13+
represents the result of an IsMaster command
14+
15+
ConnectWaitFor.cs
16+
enum removed (obsoleted by ReadPreference)
17+
18+
MongoCollection.cs
19+
added Aggregate helper method
20+
obsoleted slaveOk
21+
added support for ReadPreference
22+
23+
MongoCollectionSettings.cs
24+
obsoleted slaveOk
25+
added support for ReadPreference
26+
27+
MongoConnectionStringBuilder.cs
28+
MongoUrlBuilder.cs
29+
obsoleted slaveOk
30+
added support for ReadPreference
31+
ConnectionMode now defaults to new Automatic mode
32+
ConnectionMode no longer set to ReplicaSet when ReplicaSetName is set
33+
ConnectionMode no longer set to Direct when one server name is provided and ReplicaSet when more than one server is provided
34+
added support for SSL
35+
36+
MongoCursor.cs
37+
obsoleted slaveOk
38+
added support for ReadPreference
39+
40+
MongoCursorEnumerator.cs
41+
added support for ReadPreference (including sending $readPreference to mongos)
42+
43+
MongoDatabase.cs
44+
obsoleted slaveOk
45+
added support for ReadPreference
46+
commands now go to a server chosen by ReadPreferences (not necessarily the primary)
47+
48+
MongoDatabaseSettings.cs
49+
obsoleted slaveOk
50+
added support for ReadPreference
51+
52+
MongoDBRef.cs
53+
use new BsonSerializerAttribute to configure serializer for MongoDBRef
54+
55+
MongoServer.cs
56+
instance management logic moved from this class to new proxy classes
57+
static constructor no longer registers serializers (see MongoDBRef and SystemProfileInfo)
58+
removed ConnectWaitFor overload to Connect
59+
60+
MongoServerBuildInfo.cs
61+
added new FromCommandResult helper factory method
62+
63+
MongoServerInstance.cs
64+
added new MongoServerInstanceType enum (Unknown, StandAlone, ReplicaSetMember, ShardRouter)
65+
added tracking of a running average Ping time
66+
moved state verification time here from MongoConnectionPool
67+
added several new internal properties (AveragePingTime, ReplicaSetInformation, InstanceType)
68+
changed most thread synchronization to use Interlocked methods rather than locks
69+
reimplemented VerifyState
70+
reimplemented Connect
71+
renamed internal VerifyState helper method to LookupServerInformation (and reimplemented it)
72+
added internal Ping helper method that keeps running average of Ping time
73+
74+
MongoServerSettings.cs
75+
obsoleted slaveOk
76+
added support for ReadPreference
77+
added _serversReadOnly private field
78+
added UseSsl and VerifySslCertificate properties
79+
80+
MongoUrl.cs
81+
added new Automatic and ShardRouter ConnectionModes
82+
obsoleted slaveOk
83+
added support for ReadPreference
84+
added support for SSL
85+
86+
ReadPreference.cs
87+
new class to represent a read preference
88+
89+
ReplicaSetTag.cs
90+
new class to represent a tag attached to a replica set member
91+
92+
ReplicaSetTagSet.cs
93+
new class to represent a set of tags
94+
95+
SystemProfileInfo.cs
96+
reimplemented as a subclass of BsonDocumentBackedClass
97+
removed all private fields and reimplemented properties to extract from the backing document
98+
added new LockStatistics and NumberOfYields properties introduced by MongoDB Server 2.2
99+
added new RawDocument property to expose the underlying raw BSON document
100+
added new SystemProfileLockStatistics and SystemProfileReadWriteLockStatistics helper classes
101+
reimplemented SystemProfileInfoSerializer as a BsonDocumentBackedClassSerializer
102+
added new SystemProfileLockStatisticsSerializer class
103+
added new SystemProfileReadWriteLockStatisticsSerializer class
104+
105+
MongoGridFS.cs
106+
obsoleted slaveOk
107+
added support for ReadPreference
108+
changes to use SafeMode from the GridFS settings
109+
110+
MongoGridFSFileInfo.cs
111+
obsoleted slaveOk
112+
added support for ReadPreference
113+
114+
MongoGridFSSettings.cs
115+
fixed handling of defaults
116+
fixed Clone
117+
118+
BlockingQueue.cs
119+
added new _pipelineCount private field to track items that are not yet in the queue but are in the pipeline (will be queued eventually)
120+
added new Count property that reports the number of items in the queue PLUS the number of items in the pipeline
121+
added new overload of Dequeue that blocks forever waiting for an item to be queued
122+
added new EnqueueWorkItem method that adds a work item to the pipeline
123+
added new RunItemFunc that runs a work item from the pipeline and queues the result
124+
125+
ConnectedInstanceCollection.cs
126+
new class to hold a collection of connected instances sorted by average ping time
127+
128+
DirectConnector.cs
129+
class has been removed
130+
more or less replaced by DirectMongoServerProxy
131+
132+
DirectMongoServerProxy.cs
133+
new class to handle management of a directly connected instance
134+
135+
DiscoveringMongoServerProxy.cs
136+
new class that is used when we won't know what kind of server we are connected to until we try to connect to it
137+
138+
IMongoServerProxy.cs
139+
interface for proxies
140+
141+
MongoConnection.cs
142+
added support for SSL
143+
144+
MongoConnectionPool.cs
145+
moved state verification timer to MongoServerInstance
146+
RemoveConnection is now private
147+
148+
MongoServerProxyFactory.cs
149+
new class to handle choosing the type of IMongoServerProxy to create based on settings
150+
151+
MultipleConnectionMongoServerProxy.cs
152+
new abstract class for managing multiple active MongoServerInstances
153+
154+
PingTimeAggregator.cs
155+
new class to keep track of ping times and their average for a MongoServerInstance
156+
157+
ReplicaSetConnector.cs
158+
removed class
159+
more or less replaced by MultipleConnectionMongoServerProxy and ReplicaSetMongoServerProxy
160+
161+
ReplicaSetInformation.cs
162+
new class to hold information about a replica set
163+
164+
ReplicaSetMongoServerProxy.cs
165+
new subclass of MultipleConnectionMongoServerProxy to implement replica set specifics
166+
167+
ShardedMongoServerProxy.cs
168+
new sublcass of MultipleConnectionMongoServerProxy to implement mongos specifics
169+
170+
MongoQueryProvider.cs
171+
fixed a bug related to First, FirstOrDefault, Single and SingleOrDefault when projecting a primitive type
172+
173+
PredicateTranslator.cs
174+
changed Mod operation to use a 64-bit integer
175+
176+
SelectQuery.cs
177+
changed skip and take handling to be order dependent
178+
Distinct now must appear last in the query pipeline
179+
180+
BsonSerializationInfoHelper.cs
181+
moved code to the BsonSerializationInfo class
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
C# Driver Version 1.6 Release Notes
2+
===================================
3+
4+
This is a major release featuring support for server 2.2. The major change is
5+
support for[read preferences](http://docs.mongodb.org/manual/applications/replication/#read-preference)
6+
allowing tag based granularity for selecting servers to send commands and
7+
queries to. In addition, we have added support for SSL and a helper method
8+
for the new aggregation framework.
9+
10+
File by file change logs are available at:
11+
12+
https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Change%20Log%20v1.6-Bson.txt
13+
https://github.com/mongodb/mongo-csharp-driver/blob/master/Release%20Notes/Change%20Log%20v1.6-Driver.txt
14+
15+
These release notes describe the changes at a higher level, and omits describing
16+
some of the minor changes.
17+
18+
Breaking changes
19+
----------------
20+
21+
- ConnectWaitFor has been removed and replaced with read preferences. Anyone
22+
using the ConnectWaitFor enumeration will need to change their code.
23+
- Commands are no longer always sent to primaries. If you are expecting this
24+
behavior, ensure that your read preference is set to Primary.
25+
26+
JIRA issues resolved
27+
--------------------
28+
29+
The full list of JIRA issues resolved in this release is available at:
30+
31+
https://jira.mongodb.org/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+CSHARP+AND+fixVersion+%3D+%221.6%22+AND+status+%3D+Closed+ORDER+BY+priority+DESC&mode=hide

0 commit comments

Comments
 (0)