I (OP) was looking into these libraries/options as part of a side project that's been delayed by real work.  I'm also relegating Mongo to a caching layer after stumbling upon Sarah Mei's "Why You Should Never Use MongoDB" and realizing I was going to have the exact same problems.

Clayton Daley

On Thu, Oct 8, 2015 at 12:23 PM, Jonathan Vanasco <twisted-python@2xlp.com> wrote:

On Oct 8, 2015, at 6:19 AM, bret curtis wrote:

We're not sure about what OP has done, but if there is ever anything lacking in TxMongo... please open an issue/ticket with us over at:

Thanks for the reply!   I actually did open a few lowball tickets on TxMongo yesterday -- the package doesn't specify the minimum required versions for mongo or twisted.  

I did some tests yesterday on PyMongo, and it seems like using it in deferToThread is safe.  I also ran some simulations on staging under a heavy load; no exceptions, everything passes, data is stored correctly.   The current pymongo "client" appears to be a threadsafe connection pool, and I can just grab a connection from it when needed in a thread.  Woo Hoo!

If the next version of this tool stays in Python, we'll definitely need to use TxMongo.  In the current design, we're already deferred to a thread and would have to restructure too much to use TxMongo.

Twisted-Python mailing list