794 Commits (90cadbe7f85814e49159493cea5e3f0d9d447edd)
 

Author SHA1 Message Date
rstam 53a58fb503 Further work on CSHARP-283. Added BsonArray overloads to resolve ambiguity of BsonArray arguments with IEnumerable<BsonValue> and params BsonValue[] overloads. Improved doc comments for Query and Update builders. 14 years ago
rstam 461eee8337 Fixed CSHARP-290. Added back the IDictionary<string, object> overloads, but also added Dictionary<string, object> overloads to resolve the ambiguity when passing a Dictionary<string, object> value as an argument. Less common ambiguities (with classes like SortedDictionary and SortedList) still have to be resolved by the user with a cast. 14 years ago
rstam befe38a710 Merged CSHARP-297 pull request from Brian Knight with minor tweak. Added additional unit test. 14 years ago
Brian Knight 23375b767c Fixed CSHARP-297. Implemented IsCapped method on MongoDB.Driver.MongoCollection and added Capped property to MongoDB.Driver.CollectionStatsResult. MongoCollectionTests updated with an online test. 14 years ago
rstam 11acfb51cf Implemented CSHARP-202 (see ConnectWaitFor added in earlier commit). This commit improves error messages when Connect fails (for both DirectConnector and ReplicaSetConnector). 14 years ago
rstam 4508a86ea0 Fixed CSHARP-293. Added additional information to the error message when the same element name is used more than once in a class map. 14 years ago
rstam 1fa7d1d566 Wrestling with replica set failover. Probably still needs more testing. Added waitFor parameter to Connect to specify what to wait for when connecting to a replica set. Added connectionAttempt counter to MongoServer. Changed how current primary is tracked in MongoServer. Added new ConnectedToSubset value to MongoServerState. 14 years ago
rstam af18bec317 Changed when MongoServerInstances are created. They are now created as soon as MongoServer is created (with a State of Disconnected). For a direct connection, a single MongoServerInstance is created. For a replica set, a MongoServerInstance is created for each server on the seed list, and the set is adjusted as necessary when we actually connect to the replica set. This change means that the Instances property is never null, so client code doesn't have to special case for null. 14 years ago
rstam cc956a9336 Second attempt at CSHARP-268. Since MongoServer state changes in response to events raised on multiple threads (when using replica sets) we need a second lower level stateLock to synchronize state changes. Note to self: be careful with commits after 1am... 14 years ago
rstam 3a615683c9 This reverts commit cc86db54b6. 14 years ago
rstam cc85db54b6 Fixed CSHARP-268. Added locking to MongoServerInstance to make it thread safe. Simplified locking in MongoServer by using just one lock (multiple locks were confusing and had the potential for deadlock). 14 years ago
rstam 313c6532dc Potential resolution to CSHARP-283. Ambiguity between overloads is intentional, reflecting the inherent dual role of a BsonArray (it is both a BsonValue and an IEnumerable<BsonValue>). The user can either use a cast to resolve the ambiguity, or use a different data type like List<BsonValue> which doesn't have the ambiguity. Also changed Query.All, .In and .NotIn to match AddToSetEach (might break some code but easily fixed). The JIRA ticket will be left open for a few days for further comments from anyone interested. 14 years ago
rstam 94208aafcb Fixed CSHARP-290. Removed overloads with an IDictionary<string, object> parameter leaving the one with the non-generic IDictionary parameter. The overload with the non-generic IDictionary parameter can also take Dictionary<string, object> argument values and will do the right thing with them. This removes the ambiguity caused by having both overloads. 14 years ago
rstam b8f5c0a1ee Fixed CSHARP-280. Removed IEnumerable<object> overloads that were ambiguous with IEnumerable overloads. Replaced a few other IEnumerable<object> with IEnumerable to be Powershell friendly in those cases also. 14 years ago
rstam 8d599e4ef8 Implemented CSHARP-271. When Connect is called for the primary only immediately start creating connections on a background thread until MinConnectionPoolSize is reached. 14 years ago
rstam 767f1880aa Implemented CSHARP-282. MongoCollection.Update now throws an ArgumentException if called with an empty UpdateBuilder. 14 years ago
rstam a5801a30ad Fixed CSHARP-287. Changed MongoGridFSStream.OpenCreate to use the fileInfo.Id value if it is provided (instead of throwing an exception). 14 years ago
rstam 92be4a63bb Implemented CSHARP-286. Added support for dropTarget to RenameCollection. Taken with minor changes from a pull request by Dow Liu. 14 years ago
rstam aade7d88c8 Merge branch 'renameCollectionDropTarget' of git://github.com/redforks/mongo-csharp-driver into redforks 14 years ago
rstam 3b4b45f66c Fixed CSHARP-281. Implementations of PopFirst and PopLast were reversed. This is a breaking change if you had compensated for the bug by calling the opposite method. 14 years ago
Red Forks 755a7ea446 add dropTarget arg to RenameCollection() 14 years ago
rstam a4b69e0001 Implemented CSHARP-276. Added overloads of the BsonArray constructor and AddRange and Create methods that take a non-generic IEnumerable parameter. Also removed the BsonDocumentToBsonArray mapping in BsonTypeMapper because it conflicts with the new IEnumerable overloads (and it was a rather far-fetched mapping anyway). 14 years ago
rstam 1031516348 Implemented CSHARP-254. Several return values that could potentially overflow Int32 have been changed to Int64. 14 years ago
rstam 8838a2aefb Implemented CSHARP-274. Make the overloads (both generic and non-generic) of Insert, InsertBatch and Save match. 14 years ago
rstam 8e9d342487 Implemented CSHARP-270. Added more information to a few of the error messages in exceptions thrown by BsonClassMapSerializer. 14 years ago
rstam dfb91df761 Changed MongoConnection to remember the RequestId of the last message sent on this connection. 14 years ago
rstam 975ea705aa Fixed CSHARP-273. If isMaster reports both arbiterOnly and passive true, only believe arbiterOnly and set passive to false. 14 years ago
rstam 58dd471dc4 Implemented CSHARP-272. Changed BsonSerializer.ConfigLock to a ReaderWriterSlimLock to increase concurrency. 14 years ago
rstam 23346cd0f4 Fixed CSHARP-269. MongoGridFS.EnsureIndexes now checks actual server instance (if a RequestStart is in scope) to see if it is a primary. MongoGridFS.Download now actually uses slaveOk from database.Settings. Added overload of RequestStart with slaveOk parameter. Added RequestConnection property to MongoServer that can be used to get the actual connection reserved by RequestStart. Made get accessors of MongoConnection properties public so client code can get information about a connection. 14 years ago
rstam 2e19437214 Implemented CSHARP-267. JsonReader and JsonWriter now support UUID, CSUUID, JUUID and PYUUID for creating various representations of UUIDs, and HexData as a variant of BinData that uses hex instead of Base64. Added out guidRepresentation parameter to ReadBinaryData. Added ShellVersion property to JsonWriterSettings, so now JsonWriter can tailor Shell output mode to the version of the shell being targeted. 14 years ago
rstam 68f8ef8fb5 Fixed CSHARP-265. DictionarySerializer and DictionaryGenericSerializer now switch to the alternate array representation when any key value is not a valid element name. The client code can also force use of Array or Document representation using serialization options (perhaps for efficiency reasons to skip scanning the keys for validity as element names). 14 years ago
rstam d7ce7f2ee5 Further work on CSHARP-257. Added Capacity property to BsonArray. 14 years ago
rstam ef3928b1bc Implemented CSHARP-257 (at least partially?) by adding a new BsonArray constructor that lets the caller set the initial capacity of the BsonArray. 14 years ago
rstam 2f4bfa6567 Implemented CSHARP-261 and CSHARP-262. JsonReader now supports more variants of Date constructors (with or without new). JsonWriter now writes "new" in front of Date as required by JavaScript. 14 years ago
rstam 0a1371cfef Implemented CSHARP-260. Modified JsonReader to support additional ways of representing regular expressions. 14 years ago
rstam 9e15bfdab4 Fixed CSHARP-258. Added FixOldDateTimeMaxValueOnInput property to BsonBinaryReaderSettings and modified BsonBinaryReader to fix old DateTime.MaxValues on input if FixOldDateTimeMaxValueOnInput is true. 14 years ago
rstam 444570736f Further work on CSHARP-253 to allow CreateIndex to work with nested element names. CreateIndex calls Insert, so Insert has been modified to allow the caller to set CheckElementNames to false (see the new MongoInsertOptions class). While this was put in for CreateIndex, it also makes it possible for a developer to disable element name checking if necessary. 14 years ago
rstam 53dcc56e57 These changes mirror the changes made yesterday to the BsonWriters. Consolidated BsonBaseReader into BsonReader. Added abstract base class BsonReaderSettings to hold settings common to all readers. 14 years ago
rstam 1738993e77 Implemented CSHARP-253. Check Insert, Update and FindAndModify documents for invalid element names. Added CheckElementNames and CheckUpdateDocument properties to BsonWriter. Consolidated BsonBaseWriter into BsonWriter. Added new base BsonWriterSettings to hold settings common to all BsonWriters. Added unit tests for CSHARP-253. 14 years ago
rstam 0f330c1cc6 Implemented CSHARP-247. It is now possible to deserialize a document to an interface provided the document contains a discriminator indicating the actual type. 14 years ago
rstam 215cd5b38b Merge branch 'master' of github.com:mongodb/mongo-csharp-driver 14 years ago
sridharn 87a5a5b825 CSHARP-250. 1.1 nuget spec 14 years ago
rstam 5b002bc7cf Changed AssemblyVersion to 1.2.0.*. 14 years ago
rstam 29f3acdb38 BUMP 1.1.0.4184. 14 years ago
rstam f4826c06da Update release notes with UuidStandard instead of Uuid. 14 years ago
rstam c9f9a9b235 BsonBinarySubType enum no longer has a value Uuid (instead of just changing the value of Uuid from 3 to 4 we introduced two new names: UuidLegacy and UuidStandard). The reason is that it is better to get a compile time error if you have code that used the Uuid value than for it to compile correctly but with a new value of 4, which would almost certainly silently introduce bugs. If you used Uuid in the past you have to decide whether to use UuidLegacy or UuidStandard in the future. 14 years ago
rstam 896666bda2 Changing setup project for version 1.1. 14 years ago
rstam 8284c37696 Edits to the release notes. 14 years ago
rstam 76521bc9af Partial implementation of ConvertGuids utility. Minor edits of release notes. 14 years ago
sridharn 4dd056a2f8 Some release note cleanup 14 years ago