Commit Graph

342 Commits

Author SHA1 Message Date
Thomas Goyne c46a2a34de Fix typos and minor errors in comments 2016-02-24 16:58:10 -08:00
Thomas Goyne db7d6fa2a8 Don't hold onto the tableview between runs of async queries
Updating the table view in advance_read() can be very expensive, and the
updated data is never actually used.
2016-02-24 16:58:10 -08:00
Thomas Goyne a95eb50915 Don't create background queries for Results on threads without runloops 2016-02-24 16:58:09 -08:00
Thomas Goyne 3e90c30571 Add more tests and fix bugs 2016-02-24 16:58:09 -08:00
Thomas Goyne 8c4f2a4f30 Reduce the scope of class friendships 2016-02-24 16:58:09 -08:00
Thomas Goyne 13e1054553 Don't continue to run queries in the background if the result is unused 2016-02-24 16:58:09 -08:00
Thomas Goyne 934263f76a Automatically create the async query when converting to a TableView 2016-02-24 16:58:09 -08:00
Thomas Goyne 8f668fdf09 Use a single AsyncQuery per Results regardless of number of callbacks added 2016-02-24 16:58:08 -08:00
Thomas Goyne d165458601 Add support for running queries asynchronously 2016-02-24 16:58:08 -08:00
Thomas Goyne 565e39a287 Merge pull request #47 from realm/tg/core-0.96.2
Update to core 0.96.2
2016-02-24 10:12:04 -08:00
Thomas Goyne bceec93a69 Update to core 0.96.2 2016-02-23 15:01:35 -08:00
Thomas Goyne d87c41b352 Merge pull request #46 from realm/tg/remove-inorrect-move
Remove an incorrect std::move()
2016-02-19 09:42:53 -08:00
Thomas Goyne 52386c08e6 Merge pull request #44 from realm/tg/core-tarball-path
Fix dependency information for the core tarball
2016-02-19 09:42:31 -08:00
Thomas Goyne ae9d41f9ce Remove an incorrect std::move() 2016-02-18 19:05:02 -08:00
Thomas Goyne 055de67185 Fix dependency information for the core tarball 2016-02-18 19:02:54 -08:00
Thomas Goyne 87655793b7 Merge pull request #40 from realm/tg/list
Wrap more of LinkView in List
2016-02-16 17:35:58 -08:00
Thomas Goyne 7c350031d6 Merge pull request #37 from realm/tg/index-set-tests
Add IndexSet tests
2016-02-16 10:07:11 -08:00
Thomas Goyne f5ae1bdf80 Merge pull request #39 from realm/tg/validate-schema-changes
Handle allowed schema changes in the transaction log observer
2016-02-16 10:07:01 -08:00
Thomas Goyne a99cbb7b84 Merge pull request #41 from realm/tg/index_of
Remove the Query version of Results::index_of()
2016-02-12 17:37:24 -08:00
Thomas Goyne 5f5510e170 Remove the Query version of Results::index_of()
It didn't work for queries based on a LinkView because for those the arguments
to count() are indexes in the LinkView rather than table rows, and there's
currently no way to check if a query is based on a LinkView.
2016-02-10 10:52:33 -08:00
Thomas Goyne f7957b7633 Merge pull request #22 from realm/tg-realm-coordinator
Extract cache management and inter-Realm sharing to RealmCoordinator
2016-02-10 10:20:51 -08:00
Thomas Goyne 638b4ec35e Actually update the coordinator's copy of the schema 2016-02-08 14:46:42 -08:00
Thomas Goyne a3dab7e4b1 Add wrappers for platform-specific headers and normalize include paths
Building the objectstore code now only requires adding the root `src` directory
to the include paths.
2016-02-08 14:46:42 -08:00
Thomas Goyne 74eb195e7f Add wrappers for a bunch more LinkView methods 2016-02-03 18:05:56 -08:00
Thomas Goyne fdc67777bb Make List default constructable 2016-02-03 18:05:56 -08:00
Thomas Goyne 4c5389dbac Return RowExpr from List::get() 2016-02-03 18:05:55 -08:00
Thomas Goyne 8e58fc693c Call verify_attached() from verify_in_transaction() 2016-02-03 18:05:55 -08:00
Thomas Goyne 27acf3f109 Fix spelling of verify_in_transaction 2016-02-03 18:05:55 -08:00
Thomas Goyne 9152198962 Change List::realm() to List::get_realm() for consistency 2016-02-03 18:05:55 -08:00
Thomas Goyne 6276266d67 Make List const-correct 2016-02-03 18:05:55 -08:00
Thomas Goyne 1cbbf1958f Check the thread in all of List's methods 2016-02-03 18:05:55 -08:00
Thomas Goyne 243ae32187 Fix incorrect error message 2016-02-03 18:05:55 -08:00
Thomas Goyne 0819f72b1b Remove call to sync_if_needed() on a LinkView 2016-02-03 18:05:55 -08:00
Thomas Goyne 62d573c1d9 Remove std:: from size_t in list.* 2016-02-03 18:05:55 -08:00
Thomas Goyne 356c17ba11 Remove list.hpp's dependency on shared_realm.hpp 2016-02-03 18:05:54 -08:00
Thomas Goyne 07c40b4517 Reformat list.{hpp,cpp} to match core style 2016-02-03 18:05:44 -08:00
Thomas Goyne ad5db72767 Destroy all notifiers before closing realms in clear_cache() 2016-01-25 17:46:40 -08:00
Thomas Goyne e557babaad Fix the generic implementation of ExternalCommitHelper 2016-01-25 17:46:39 -08:00
Thomas Goyne 4eb49ce6dc Add a not-very-useful generic CachedRealm implementation 2016-01-25 17:46:39 -08:00
Thomas Goyne 112c778d8e Extract the non-Apple specific parts of CachedRealm to a base class 2016-01-25 17:46:39 -08:00
Thomas Goyne 178c562f2c Add an untested non-Apple ExternalCommitHelper implementation 2016-01-25 17:46:39 -08:00
Thomas Goyne 4c195c92e0 Remove some unused cruft from ExternalCommitHelper 2016-01-25 17:46:39 -08:00
Thomas Goyne 513b3d770c Add a short explanation of CachedRealm 2016-01-25 17:46:39 -08:00
Thomas Goyne 89bd55a535 Actually remove the Realm from the cache when close() is called 2016-01-25 17:46:38 -08:00
Thomas Goyne 9b8a0d5346 Log uncaught exceptions in the notifier thread
By default the thread just silently goes away.
2016-01-25 17:46:38 -08:00
Thomas Goyne ebfca16d00 Eliminate a config copy when opening Realms 2016-01-25 17:46:38 -08:00
Thomas Goyne e30e2ff278 Simplify RealmCoordinator::get_coordinator() 2016-01-25 17:46:38 -08:00
Thomas Goyne 7a0c83929f Use an unordered map for the Realm coordinator cache 2016-01-25 17:46:38 -08:00
Thomas Goyne d6daa052e8 Decouple Realm instance tracking from interprocess notifications 2016-01-25 17:46:38 -08:00
Thomas Goyne 2ed90e6d79 Check for invalid schema changes even when KVO is not used 2016-01-25 10:58:30 -08:00