- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我无法对远程 mongodb 数据库进行任何写入。我能够连接并进行查找(例如查找)。我这样连接:
conn = pymongo.MongoClient(db_uri,slaveOK=True)
db = conn.test_database
coll = db.test_collection
但是当我尝试插入时,
coll.insert({'a':1})
我遇到了一个错误:
-------------------------------------------------- -------------------------
AutoReconnect Traceback (most recent call last)
in ()
----> 1 coll.insert({'a':1})
/usr/lib/python2.7/dist-packages/pymongo/collection.pyc in insert(self, doc_or_docs, manipulate, safe, check_keys, continue_on_error, **kwargs)
410 message._do_batched_insert(self.__full_name, gen(), check_keys,
411 safe, options, continue_on_error,
--> 412 self.uuid_subtype, client)
413
414 if return_one:
/usr/lib/python2.7/dist-packages/pymongo/mongo_client.pyc in _send_message(self, message, with_last_error, command, check_primary)
1126 except (ConnectionFailure, socket.error), e:
1127 self.disconnect()
-> 1128 raise AutoReconnect(str(e))
1129 except:
1130 sock_info.close()
AutoReconnect: not master
如果我删除 slaveOK=True
(将其设置为默认值 False),我仍然可以连接,但读取(和写入)失败:
AutoReconnect Traceback (most recent call last)
in ()
----> 1 coll.find_one()
/usr/lib/python2.7/dist-packages/pymongo/collection.pyc in find_one(self, spec_or_id, *args, **kwargs)
719 *args, **kwargs).max_time_ms(max_time_ms)
720
--> 721 for result in cursor.limit(-1):
722 return result
723 return None
/usr/lib/python2.7/dist-packages/pymongo/cursor.pyc in next(self)
1036 raise StopIteration
1037 db = self.__collection.database
-> 1038 if len(self.__data) or self._refresh():
1039 if self.__manipulate:
1040 return db._fix_outgoing(self.__data.popleft(),
/usr/lib/python2.7/dist-packages/pymongo/cursor.pyc in _refresh(self)
980 self.__skip, ntoreturn,
981 self.__query_spec(), self.__fields,
--> 982 self.__uuid_subtype))
983 if not self.__id:
984 self.__killed = True
/usr/lib/python2.7/dist-packages/pymongo/cursor.pyc in __send_message(self, message)
923 self.__tz_aware,
924 self.__uuid_subtype,
--> 925 self.__compile_re)
926 except CursorNotFound:
927 self.__killed = True
/usr/lib/python2.7/dist-packages/pymongo/helpers.pyc in _unpack_response(response, cursor_id, as_class, tz_aware, uuid_subtype, compile_re)
99 error_object = bson.BSON(response[20:]).decode()
100 if error_object["$err"].startswith("not master"):
--> 101 raise AutoReconnect(error_object["$err"])
102 elif error_object.get("code") == 50:
103 raise ExecutionTimeout(error_object.get("$err"),
AutoReconnect: not master and slaveOk=false
我连接不正确吗?有没有办法指定连接到主副本?
câu trả lời hay nhất
AutoReconnect: not master
意味着您的操作失败,因为您尝试在其上发出命令的节点不是副本集的主节点,其中命令(例如,写操作)要求该节点是主节点。设置slaveOK=True
只是使您能够从辅助节点读取,默认情况下您只能从主节点读取。
如果使用 replicaSet=
向构造函数提供副本集名称,MongoClient 会自动发现并连接到主节点。 .请参阅 Connecting to a Replica Set 中的“PyMongo docs” .
顺便说一句,slaveOK
已弃用,替换为 ReadPreference .如果您想将主节点以外的节点作为目标,则可以在创建客户端或发出查询时指定 ReadPreference。
关于python - 写入时出现pymongo错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25861174/
Ứng dụng của tôi bắt đầu bằng Bộ điều khiển thanh tab có 5 tab. Lúc đầu, cái đầu tiên xuất hiện với tên của nó, nhưng bốn cái còn lại không có tên cho đến khi tôi nhấp vào chúng. Tên sau đó được hiển thị dựa trên ngôn ngữ người dùng nói. Cách đặt tùy chọn trước khi thanh tab xuất hiện
Tôi có các đối tượng json mảng lồng nhau (lớp 1, lớp 2 và lớp 3). Vấn đề của tôi là bảng dữ liệu không xuất hiện. Mọi CDN liên quan đều đã được nhập. Bảng này chỉ hiển thị một phần của nó. Tôi đã tham khảo nhiều trang web nhưng không trang nào giải quyết được vấn đề của tôi. Trước đây tôi đã sử dụng các bảng tiêu chuẩn để
Tôi đang cố gắng thiết lập để hiển thị Parse PFLoginViewController. Đây là một trong các lớp Trình điều khiển Chế độ xem của tôi. nhập Nhập UIKit Nhập phân tích cú pháp
Tôi gặp phải vấn đề này, các đối tượng tôi vẽ không xuất hiện trong GUI. Tôi biết nó đang được xử lý vì dữ liệu đang được đẩy vào tệp nhật ký. Tuy nhiên, đồ họa không xuất hiện. Đây là một số mã của tôi: public static void main(Strin
Tôi có một sơ đồ cây chứa các lần xuất hiện của các từ như thế này... Số lần xuất hiện của TreeMap = new TreeMap (); Chuỗi = word Integer = số lần xuất hiện. Làm cách nào để có được số lần xuất hiện tối đa - một số nguyên,
Vì vậy, tôi nhắc người dùng nhập một biến. Nếu biến nhỏ hơn 0 và lớn hơn 10. Nếu người dùng nhập 10, tôi muốn yêu cầu người dùng nhập lại số đó. Khi hỏi thời gian, tôi nhập số 4 thì nó báo bạn nhập sai. Nhưng nó hoạt động rất tốt ở lần thử thứ hai. Ví dụ: Nếu tôi nhập 25, nó sẽ in
Tôi đã làm một ví dụ sử dụng thuộc tính tràn css. Trong ví dụ này, tôi gặp sự cố với thao tác cuộn tràn trang. Thanh cuộn xuất hiện nhưng không hoạt động nghĩa là bất cứ khi nào con trỏ được di chuyển đến thanh cuộn, trong thời gian này thanh cuộn không hoạt động. Mình không biết gì về cái này mong các bạn giúp đỡ
Hiện tại tôi đang làm việc trên một phần tử. Khi bạn nhấp vào một phần tử, thông báo sau sẽ xuất hiện và tôi muốn biết cách làm cho nó biến mất khi bạn nhấp vào phần tử tiếp theo mà không cần nhấp lại vào phần tử đó.... Ví dụ: tôi có pizza trong phần tử của mình và tôi muốn Nhấp vào trên pizza thịt để xem phần trên, sau đó bấm vào bánh pizza phô mai để xem phần trên và thịt
Tôi có một mô-đun bộ định tuyến so sánh các chủ đề với các biểu thức thông thường và các lần xuất hiện liên kết với các mặt nạ khóa nhất quán. (Đây là một cách lọc tuyến đường url đơn giản như symfony http://symfony.com/doc/curr
Câu hỏi này đã có câu trả lời ở đây: đã đóng cửa 9 năm trước. Có thể trùng lặp: mysql_fetch_array() dự kiến tham số 1 là tài nguyên, bo
Tôi có Chế độ xem có thanh công cụ ở dưới cùng và tôi đang sử dụng NavigationLink để điều hướng đến Chế độ xem. Nhưng khi View xuất hiện thì thanh công cụ xuất hiện hơi thấp. Ước chừng nửa giây sau, nó đột nhiên nhảy vào vị trí. Nó sẽ chỉ hoạt động khi ứng dụng khởi động
Tôi đang cố gắng thêm AVAudioPlayer cho nhạc nền trên ứng dụng của mình, tôi đang khởi chạy trình phát trên màn hình chính, cố gắng bắt đầu phát khi ứng dụng đang mở nhưng gặp phải hành vi không mong muốn... nó phát và ngay lập tức tiếp tục tạo trình phát mới và chơi những người chơi này, vì vậy hãy chơi đồng thời
Đây là lấy một số, lấy giai thừa của nó và nhân đôi nó, nhưng vì trường hợp cơ bản là nếu bạn nhập 0 thì kết quả là 2, vì vậy để giải quyết nó, tôi đã sử dụng câu lệnh if nhưng gặp lỗi đầu vào " lỗi phân tích cú pháp nếu" . Tôi thực sự đánh giá cao nếu các bạn có thể giúp đỡ
Ngoại lệ được đưa ra khi tạm dừng android.os.DeadObjectException trong android.os.BinderProxy.transactNative(phương thức gốc) trong android.
Tôi đã viết một số mã cho trò chơi đoán từ. Nó đọc một ký tự từ đầu vào của người dùng và tìm kiếm ký tự đó trong một từ, tùy thuộc vào việc ký tự đó có trong một từ hay không, chương trình sẽ trả về và điều khiển một số biến. Đoạn mã như sau: import java.util.Random import;
Tôi là người mới trong lĩnh vực tự động hóa. Đây là mã đăng nhập TestNG đơn giản của tôi, khi tôi chạy mã này dưới dạng TestNG, nó sẽ ném java.lang.NullPointerException và nhấp đúp vào nó, nó nổi bật, tôi điều hướng đến U
Tôi là lập trình viên C# và tôi đã quen với cú pháp đóng gói của C# và những thứ khác. Nhưng bây giờ, vì lý do nào đó, tôi nên viết một cái gì đó bằng java, tôi đang thực hành java trong một ngày! Tôi sẽ tạo một dự án giả cho chính mình để làm quen với java hơn!
Tôi đang sử dụng Intellij, lớp nguồn của tôi là main.com.coding và tệp tài nguyên của tôi là main.com.testing. Tôi đặt tệp spring.xml vào tệp tài nguyên. Lớp kiểm tra của tôi nằm trong test.
Tôi muốn thư mục kiểm tra của tôi tách biệt với mã ứng dụng của tôi. Cấu trúc dự án của tôi giống như mô-đun myproject/ myproject/ myproject.py này
Câu hỏi này đã có câu trả lời: NullPointerException là gì và làm cách nào để khắc phục nó? (12 câu trả lời) Đã đóng 6 năm trước. Vì vậy tôi cố gắng so sánh 2 giá trị, một
Tôi là một lập trình viên xuất sắc, rất giỏi!