Guide
Diagnosing and Fixing DataGrip Result‑Set Pagination Failures
DataGrip sometimes loads all rows of a large query, disabling pagination and causing freezes. This guide diagnoses the common causes, walks through ordered checks, applies fixes, and tells you when to contact JetBrains support.
Published by Tasadduq Burney
10 Oct 2025, 02:13 UTC
4 min27.3K views0

When Pagination Doesn’t Work
In DataGrip, a large query should show a pagination bar (e.g., "Page 1 of 25") instead of loading the entire result set. If you see every row immediately, the IDE has either disabled pagination or the server didn’t return a streamable result. The symptoms are:
- IDE freezes or consumes excessive memory.
- Result grid shows all rows without a pagination bar.
- Log messages such as "Result set pagination disabled – limit exceeded" appear.
Root‑Cause Table
| Cause | Typical Symptom | Key Setting or Log |
|---|---|---|
DataGrip’s Maximum rows in result set set too high | All rows load; no pagination bar. | File → Settings → Database → Result Set → Maximum rows |
| Server‑side timeout or limit truncates results | Result set is incomplete or a warning appears. | Server logs: statement_timeout, max_rows. |
| Large binary/text columns inflate row size | IDE disables pagination to avoid memory blow‑up. | DataGrip log: "Row size exceeded threshold – pagination disabled" |
Dialect requires explicit FETCH FIRST or LIMIT | Pagination bar appears but only partial data returned. | Query text, absence of ORDER BY with FETCH. |
| Network latency or unstable connection | IDE falls back to full fetch or times out. | JDBC driver logs, OS network diagnostics. |
Ordered Checks
- Verify DataGrip Settings
- Open
File → Settings → Database → Result Set(Windows/Linux) orDataGrip → Preferences → Database → Result Set(macOS). - Check
Maximum rows in result set. If it’s set to0or a very high number, pagination will be bypassed. - Set it to a moderate value, e.g.,
2000, and re‑run the query. - Expected check: pagination bar appears and the IDE remains responsive.
- Risk: lowering the limit may cause user frustration if they need more rows.
- Open
- Inspect Server‑Side Limits
- For PostgreSQL, run:
SHOW statement_timeout; SHOW max_rows; - For Oracle, query
SELECT * FROM v$parameter WHERE name LIKE 'timeout%'; - If limits are low (e.g.,
statement_timeout< 30s), increase them or addSET statement_timeout = 0for the session. - Expected check: the query completes without truncation and DataGrip logs “Result set pagination enabled”.
- For PostgreSQL, run:
- Check Row Size Impact
- Run a query that selects only the columns you need, e.g.,
SELECT id, name FROM large_table LIMIT 10; - If pagination appears, the problem was likely large columns. Consider using
SELECT id, name, SUBSTRING(blob_column,1,100) AS blob_previewto reduce size. - Expected check: pagination bar appears and the grid displays correctly.
- Run a query that selects only the columns you need, e.g.,
- Confirm Dialect Support
- For Oracle, rewrite the query:
SELECT * FROM large_table FETCH FIRST 1000 ROWS ONLY; - Ensure an
ORDER BYclause is present to guarantee deterministic paging. - Run and verify that the pagination bar shows 1 page and the results are correct.
- Test Network Stability
- Use
pingortracerouteto the database host from the machine running DataGrip. - Look for packet loss or high latency spikes.
- If issues exist, consider VPN, firewall rules, or a direct connection.
- Expected check: query execution time is consistent and pagination remains functional.
- Use
Fixes Tied to Findings
- Adjust DataGrip’s Max Rows – set to
2000or lower. This forces pagination and preserves IDE performance. - Increase Server Timeout – for PostgreSQL, execute
SET statement_timeout = 0;to disable the limit for the session, or adjustpostgresql.conffor a permanent change. - Trim Column Size – use
SUBSTRING,LEFT, orCASTto reduce large BLOB/TEXT columns. - Explicit Pagination Clause – add
LIMITorFETCH FIRSTwith anORDER BYto ensure the database streams rows correctly. - Improve Network Path – resolve firewall or VPN issues that may cause intermittent disconnections.
When to Escalate
If after applying the above fixes DataGrip still fails to paginate, consider:
- Reviewing the DataGrip log (Help → Show Log) for error codes or stack traces.
- Testing the same query in another client (e.g., psql, SQL Developer) to isolate whether the issue is client‑side.
- Contacting JetBrains support with the log excerpt and a reproducible query.
Practical Verification Checklist
- Run a known large query (e.g.,
SELECT * FROM large_table LIMIT 10000). - Confirm that the pagination bar appears and that the
Rows per pagesetting matches theMaximum rowslimit. - Open the Log Window (
Help → Show Log) and search forpagination enabledorpagination disabled. - Monitor memory usage in
Task Manager(Windows) orActivity Monitor(macOS) while scrolling through pages. - If the IDE freezes again, revert the recent setting changes and repeat the test.
Limitations
- Changing
Maximum rowsaffects all queries across the IDE; use session‑specific settings if available. - Server‑side timeouts may impact concurrent applications; coordinate with DB admins before raising limits.
- Large binary columns cannot be paginated without trimming; consider storing metadata separately.
- Dialect‑specific pagination clauses can alter query semantics; always verify ordering.
0 replies
A thoughtful contribution can make all the difference. Be the first to share one.