public void Push(TaskMessage item) { CheckConnection(); //WriteConcernResult result = Collection.Insert(new BsonDocument(item.GetHolder()), new MongoInsertOptions() { WriteConcern = new WriteConcern() { Journal = true } }); //WriteConcernResult result = Collection.Insert(new MongoMessage { ExtraElements = item.GetHolder() }, new MongoInsertOptions() { WriteConcern = new WriteConcern() { Journal = true } }); WriteConcernResult result = Collection.Insert(new MongoMessage { ExtraElements = item.GetHolder() }); // TODO: QueueOverflowException if (!result.Ok) { throw new Exception("error in push to mongo queue: " + result.ToJson()); } }