On the documentation for IBM Cloudant: https://console.bluemix.net/docs/services/Cloudant/offerings/bluemix.html#request-and-document-size-limits
It says Document size is 1 MB, Attachment size is 10 MB, and Request Body size is 11 MB. Is each tap form field considered a Document in Cloudant? How exactly do these three terms correspond to tap forms syncing?
A Document in Cloudant nomenclature is equivalent to an “object” in Tap Forms. And by “object” I mean a form, a record, a field, a pick list, a category, a script, a layout, a layout item, etc. I call the entire database a document because that’s what it is for Tap Forms. A document file (with a .tapforms file extension) contains within it an SQLite database file and a properties file and all of the attachments you add to your database.
So each of those things needs to be less than 1 MB big in order to sync. So if a record is more than 1 MB, it won’t sync and you’ll get an error. But unless you are putting a ton of information into Note fields (or pasting images into them), you’ll probably be fine. Tap Forms shows how big the record is at the bottom of the record details view for precisely this reason. The size you see there is not including the attachment sizes.
Hope that clears it up a bit.
Thanks!
Brendan
Is the request body size the maximum size that the sum of all these objects can be? Can a document have multiple requests to receive the data from a db?
The data is submitted to Cloudant as a single multi-part request. But that request size must be 11 MB or less and the record itself must be 1 MB or less.
The data is only requested from Cloudant during a sync operation, not when you’re just browsing your own database. If you have a form that has multiple Link to Form fields, attachments, and Photos, then Tap Forms hits the database for each of those as well as the main record.