FYI: CBL pull (import) filters are inefficient if they reject lots of documents, since those documents have to be downloaded first. Using channels is the preferred way to filter out documents from being synced to mobile devices.
Import filters are useful for:
- Filtering in P2P replication or local-to-local replication, where there are no channels
- Schema validation of incoming documents (again, mostly useful in P2P scenarios)
- Ad-hoc filtering in ways that aren’t possible with channels, or if the app developer isn’t able to get channels assigned for this purpose (i.e. “Sorry, the server devs won’t be able to get to that until March…”)