{"push_id":564671658,"size":1,"distinct_size":1,"ref":"refs/heads/25348_depose_sqlite_connections","head":"c2aa9728b5eea52caa9c56042744f9d3ac82c78b","before":"c832dc1726803628d3a032b28f8c5b0af80aa273","commits":[{"sha":"c2aa9728b5eea52caa9c56042744f9d3ac82c78b","author":{"email":"8d4697abf3e27be04ed89b8709c0cbb4b720386d@uk.ibm.com","name":"Rhys Short"},"message":"Execute all datastore db operations on a serial queue.\n\nAll database operations are performed on a single serial queue,\nthis stops leaking of connections when a user's application uses the\ndatastore on different threads, but only calls close on a single\nthread.\n\nTransactions can be handled using the serial queue SQLDatabseQueue by\ncalling submitTransaction method. When a callable is called in a\ntransaction throwing an exception causes the transaction to be rolled\nback.\n\nforceInsert method on DatastoreExtended interface now takes an\nadditional parameter, preparedAttachments, which is contains attachments\nthat were download seperately to the document. This removes the need for\nthe pull replicator to start transactions on Datastore object.\n\nRemove the getSQLDatabase from the DatastoreExtended interface\n\nRemove threadlocal code from SQLiteWrapper, enforcing the need to perform\neach database operation on the same thread.\n\nAdded a TestUtil method to create a connection to underlying database\nfor the datastore.\n\nRemove test which checks if the underlying db is closed when\ndatastore.close() is called.","distinct":true,"url":"https://api.github.com/repos/cloudant/sync-android/commits/c2aa9728b5eea52caa9c56042744f9d3ac82c78b"}]}