MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB:java.lang.IllegalStateException:trạng thái nên là:mở

Thử đặt tùy chọn maxConnectionIdleTime trong MongoClientOptions của bạn (đặc biệt nếu bạn đang sử dụng môi trường MongoDB được lưu trữ)

Ví dụ:

    new MongoClientOptions.Builder()
    .requiredReplicaSetName(REPLICASET_NAME)
    .maxConnectionIdleTime (MAX_IDLE_TIME)
    .connectionsPerHost(CONNECTION_PER_HOST)
    .cursorFinalizerEnabled(false)
    .build();

connectTimeout gây hiểu lầm vì đây là cài đặt thời gian chờ cho kết nối ban đầu.

Đối với sự cố xung quanh việc khởi tạo lại MongoClient, hãy đảm bảo rằng mã máy khách nằm trong phạm vi chính xác để mã chèn nhận. Ngoài ra, tôi chỉ thấy db chứ không thấy đối tượng cấp bộ sưu tập (proxied?) Đang được khởi tạo lại.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo tìm và cập nhật hàng loạt trường tài liệu phù hợp trong một truy vấn?

  2. mongoose điền tham chiếu đến subocument

  3. Sử dụng các hàm JavaScript được lưu trữ trong đường dẫn Tổng hợp, MapReduce hoặc runCommand

  4. Mongo Connection Pooling (Thay đổi kích thước của nhóm kết nối)

  5. MongoDB $ sin