Hello Shawn, > when i get to a part of the thread loop that does self.store.commit(), i get > a failure stating that a record that it is supposed to delete does not exist > any longer. I guess that it is been removed by another process. Is there a > way that i can safegaurd against that ? or should i just wrap it in a try: > except: ? > > just wondering if there is a better trick around it.
That indicates that the isolation level between your transactions are not cache-friendly. Ideally, a commit on another transaction should not affect data that is seen on your running transaction. Depending on which database you're using, the procedure for achieving that might be different. Storm already tries to setup a good behavior on PostgreSQL and SQLite by default, but if you're using MySQL, for instance, you have to use the InnoDB engine. Notice that this is not just about deleting objects. Depending on the database behavior, data changing during a transaction might create other inconsistencies, even if an ORM is not in use. -- Gustavo Niemeyer http://niemeyer.net -- storm mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/storm
