14 Commits

Author SHA1 Message Date
James Kafader
78c26186b0 standardize the concept of 'now' to ensure that the same view of the service is returned from the read and update queries. 2017-05-16 11:31:03 -07:00
Noah Levitt
9c2e7a59e1 remove stray code from abandoned heartbeat technique in unique_service() 2017-05-01 12:04:26 -07:00
Noah Levitt
b85566c405 rename ServiceRegistry.leader() to ServiceRegistry.unique_service(); implement heartbeat in that method; only return healthy service; add a detailed docstring 2017-04-28 16:29:00 -07:00
Noah Levitt
dcccc3fa23 lots of documentation on the service registry 2017-04-28 15:23:55 -07:00
Noah Levitt
a1c5a08790 raise exception if heartbeat status_info is missing required fields 2017-04-27 14:34:07 -07:00
James Kafader
a5cac606fa added a leader election feature and tests 2017-04-18 16:56:53 -07:00
Noah Levitt
2f01252c32 change logic of orm constructor so that initial values are not considered updates, and explain a bit in the docstring 2017-03-23 18:19:13 -07:00
Noah Levitt
7b17ed1057 turns out we want populate_defaults to happen in __init__, fix so things work right 2017-03-07 17:46:48 -08:00
Noah Levitt
3fd2e5cf60 new method on orm class populate_defaults(), which runs at the beginning of save(), since populating them in __init__() is problematic 2017-03-07 12:44:52 -08:00
Noah Levitt
07bc01cbbd have Document.load() return None if no such doc is found in the db 2017-03-02 10:31:29 -08:00
Noah Levitt
246dfb5b7e new orm class method table_ensure 2017-03-01 11:40:12 -08:00
Noah Levitt
c14bae6050 new convention, call Rethinker object rr (mnemonic RethinkeR, or *double*[think]), leave rethinkdb as r per the rethinkdb convention 2017-03-01 11:20:27 -08:00
Noah Levitt
536bf8d1d8 implement or explicitly disallow other top-level dict operations on ORM Document, and add more automated tests 2017-02-28 17:56:44 -08:00
Noah Levitt
e8db41763b rename the project "doublethink" (credit goes to @adam-miller) 2017-02-28 16:44:26 -08:00