When you create a preview branch, a subset of your data from the primary branch will be copied.
When copying data, it is assumed that the main and preview branches have identical schemas at the time of copying.
We guarantee point-in-time consistency of the data. As a result, any changes made to the main branch during the data copying process will not be incorporated into the preview branch.
Xata currently has a copy limit of 10,000 rows per database.
If your main branch database is under 10,000 rows, all your data will get copied. This includes columns with sensitive data. We have it on our roadmap to configure obfuscation of columns in the near future.
If your main branch database has more than 10,000 rows, we will copy approximately 10,000 rows, while ensuring the subset is self-contained - meaning that all the links resolve correctly.
To ensure that the links resolve correctly, we will sometimes copy more than 10,000 rows.
Due to the wide variability in database schemas, Xata cannot guarantee a specific number of rows will be copied per table. However, Xata will ensure that at least one row is copied in every table.
Typically, the data copying process takes less than 2 minutes to complete under normal circumstances.
Currently, Xata imposes a data copy limit of 10,000 rows. File attachments are not copied.
In future releases, we intend to provide users with the ability to configure the limit, up to and including copying all data from a branch.
In the meantime, you can transfer data between branches using the standard query and bulk insert APIs, but note that point-in-time consistency cannot be ensured with this approach. If you require assistance with implementation, contact us.