I just installed 3.1.13 enterprise of SeaTable - great so far!
However I noticed that the API call for “Get Rows” now just returns 10.000 rows instead of 50.000 as it is mentioned in the API documentation. Is this by purpose? Not sure whether this is new to 3.1.13…
I have to check the current limitations, but it sounds correct that is the current limits are max. 10,000 rows instead of 50,000.
BUT there is a reason and an easy fix
The reason for this change is that the Get Rows API-request needs many resources in terms of CPU and RAM of the SeaTable Server. Therefore we have to limit this request.
My recommendation is that you switch from Get Rows to the sql-query API-call. This API is much more efficient and you have a lot more possibilities to use SeaTable like an SQL-database.
In some days I will publish a tutorial how I used SeaTable to build a custom feedback/idea solution like nolt.io or canny.io. I can already spoiler that I use intensively this sql-endpoint like this. Here are just some examples:
$sql = "select * from Requests WHERE _id = '". $args['rID'] ."' LIMIT 1";
$sql = "select * from Comments WHERE `Feature Request` = '". $items->results[0]->Title ."' ORDER BY `Creation` ". ( $_SESSION['comment_sort'] ?? "DESC" );
$sql = "select * from Requests WHERE Title ILIKE '%". $searchTerm ."%' OR Description ILIKE '%". $searchTerm ."%'";
The main reason for me to use “Get Rows” instead of the sql-query call is that using “Get Rows” I can point to certain views and thereby use the filters etc. that are set in a specific view. Is there also a way to use Views in the sql call?
BTW: There is a bug in using Views in “Get Rows”: Filters are applied, but hiding columns is ignored. You have to remove them manually after the call.
“views” can not be used in the sql-query. The sql-query always expects a table. So you are right.
Still if you work with many rows (>10.000) you should use the sql-query to reduce the workload of your server.
Or you stick with the get_rows and execute this call multiple times.
There is no such a configuration. From our own experience with database (MySQL or SeaTable), querying too much data at once from database is a bad way, often leading to performance issues or memory usage issues.
Do it like thousands of other people who have used SeaTable to develop powerful processes and get their ideas and tasks done more efficiently.