Limits
Saka stops operations that take too long or do too much work. An error tells you which limit was reached; see what happens to the database. These limits have no settings.
Time and work
Section titled “Time and work”| Limit | Allowance |
|---|---|
| Time | 30 seconds per operation, excluding time spent waiting to start |
| Intermediate data | 128 MiB of data built during an operation, excluding stored data and inputs |
| Live queries | 1 second and 32 MiB per query to follow a change, within the change’s remaining allowance |
| Retained results | 256 MiB per database for results and other data kept by queries and operations |
If checking a formula times out, choose Retry with more time. If a query’s results reach a limit, its header shows Limited · Retry; hover over it for the reason. Retrying a timed-out query allows 120 seconds. Other limits stay the same: filter earlier or split the work to process less data.
The intermediate-data limit measures work, not total memory use. It does not limit database size or prevent the browser from running out of memory.
Requests and nesting
Section titled “Requests and nesting”| Limit | Maximum |
|---|---|
| Request size | About 16 MiB of source, inputs, and changes per operation |
| Value nesting | 128 levels |
| Source nesting | About 30 nested parentheses, brackets, braces, or calls |
| Pending operations | 1,024 unfinished operations per database |
If you reach one of these limits, send less at once, reduce nesting, or wait for earlier work to finish. Complex combinations of role types also have limits; simplify them if the error asks you to.
There is no separate file-size limit for opening .sakadb files, but opening them must stay within the usual time and data limits.
Counts
Section titled “Counts”A Bag can hold up to 1,073,741,823 occurrences, including repeats. An operation that would exceed this limit fails. Counts never wrap or round.
The grid
Section titled “The grid”The grid limits how much it displays at once, rather than how many rows a query can return. It allows 32 of a group’s own columns near the view, 4,096 groups, and 8,192 rows containing groups per tab.
A group that reaches a limit keeps its loaded rows, shows an amber lane, and offers Retry. Widening columns or narrowing the panel can help by showing fewer columns at once.
View cell and copying a cell read up to 1 MiB of text. Longer values show as incomplete previews. Copying a range is limited to 5 seconds and 500,000 cells, among other limits; nested query rows count too.
What happens to the database
Section titled “What happens to the database”An operation that fails before committing changes nothing. If a change has already committed and a live query cannot follow it, the change stays and only that query fails. Other queries keep working.
Debug → Task Manager shows running and queued work. It can cancel queued work and stop live queries. Stopping a query view’s query stops its whole view. Work marked “App-managed” cannot be stopped there, and running work may continue until its time limit.
Export waits for running work and downloads the committed data. It has no time or data limit.