2012-10-31 27 views
11

Tôi có một cá thể sơ cấp duy nhất của MongoDB để kết nối. Tôi đang sử dụng trình điều khiển C# (bản sửa đổi mới nhất) để kết nối và sử dụng MongoDB.MongoDB và nhiều chủ đề C# khách hàng

Ứng dụng khách của tôi là đa luồng theo đó các quy trình sẽ chạy định kỳ theo các khoảng thời gian khác nhau để tạo báo cáo. Khi có nhiều hơn một luồng đang chạy và tôi gọi các hàm khác nhau trên trình điều khiển (ví dụ: server.DatabaseExists (...)), tôi luôn gặp một ngoại lệ.

"Tên yêu cầu là hợp lệ, nhưng không có dữ liệu của các loại yêu cầu đã được tìm thấy"

at System.Net.Dns.GetAddrInfo(String name) 
    at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6) 
    at System.Net.Dns.GetHostAddresses(String hostNameOrAddress) 
    at MongoDB.Driver.MongoServerAddress.ToIPEndPoint(AddressFamily addressFamily) in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoServerAddress.cs:line 195 
    at MongoDB.Driver.MongoServerInstance.GetIPEndPoint() in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoServerInstance.cs:line 339 
    at MongoDB.Driver.Internal.MongoConnection.Open() in C:\work\rstam\mongo-csharp-driver\Driver\Internal\MongoConnection.cs:line 368 
    at MongoDB.Driver.Internal.MongoConnection.GetNetworkStream() in C:\work\rstam\mongo-csharp-driver\Driver\Internal\MongoConnection.cs:line 574 
    at MongoDB.Driver.Internal.MongoConnection.SendMessage(MongoRequestMessage message, SafeMode safeMode, String databaseName) in C:\work\rstam\mongo-csharp-driver\Driver\Internal\MongoConnection.cs:line 555 
    at MongoDB.Driver.MongoCursorEnumerator`1.GetReply(MongoConnection connection, MongoRequestMessage message) in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoCursorEnumerator.cs:line 295 
    at MongoDB.Driver.MongoCursorEnumerator`1.GetFirst() in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoCursorEnumerator.cs:line 253 
    at MongoDB.Driver.MongoCursorEnumerator`1.MoveNext() in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoCursorEnumerator.cs:line 141 
    at MongoDB.Driver.MongoDatabase.GetCollectionNames() in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoDatabase.cs:line 645 
    at MongoDB.Driver.MongoDatabase.CollectionExists(String collectionName) in C:\work\rstam\mongo-csharp-driver\Driver\Core\MongoDatabase.cs:line 297 

Chạy một thread không gây vấn đề này. Tôi hiểu rằng MongoDB là an toàn chỉ, vì vậy tôi không hiểu được nguyên nhân và biện pháp khắc phục.

+0

Vì vậy, bây giờ tôi đang gặp vấn đề tương tự như vậy, tôi đã loại bỏ DNS bằng cách sử dụng ip thay vì tên máy chủ, bạn có thực hiện bất kỳ tiến trình nào không? – Stono

+1

@Stono .. Việc sử dụng IP có giải quyết được sự cố của bạn không? – genericuser

+1

Lỗi xảy ra bên ngoài trình điều khiển MongoDB - đó là trên lớp TCP/IP - vấn đề là với độ phân giải tên. Đây là lỗi Windows, không phải lỗi trình điều khiển MongoDB hoặc DB. Có nhiều lần truy cập nếu bạn google lỗi này, tất cả đề xuất vấn đề là với độ phân giải hostname/host. –

Trả lời

1

Giải pháp "duy nhất" mà tôi đã tìm thấy là tái chế Hồ bơi ứng dụng lưu trữ dịch vụ trang web của tôi gọi cho khách hàng mongo.

+0

Tôi đang trải qua những câu hỏi cũ. Chấp nhận điều này như là câu trả lời vì đó là câu trả lời duy nhất. Rất tiếc, tôi không còn sử dụng MongoDB nữa và tôi chưa bao giờ tự giải quyết vấn đề. – Jason

Các vấn đề liên quan