Skip to content

brewDB Results Grid & Pop-out

Query results render in brewDB’s results grid, built on ag-grid 35 (modular, using the Theming API). The legacy application had no query interface at all, so there was nothing to display results in — the grid, its pop-out window, the async execution lifecycle behind it, and query history are all entirely new.

Query results grid with the pop-out results window open alongside the main editor

The grid uses ag-grid’s infinite row model, streaming rows in rather than loading a full result set up front — so it stays responsive on very large result sets instead of choking on them. Column filters are CV-type-aware, matching the filter presented to a column’s underlying type rather than treating every value as plain text. When you export, the CSV export respects whatever sort and filters are currently applied to the grid, so what you download matches what you’re looking at.

Results can also be popped out into a standalone window, separate from the main editor.

Running a query is asynchronous: submitting it returns a 202 rather than blocking on the response, and brewDB polls from there until the query reaches a terminal state — done, error, or cancelled. Each tab has its own console showing this progress. Once a query completes, its results sit in a result cache with a visible countdown badge showing the cache’s remaining TTL.

Each workspace keeps a server-side history ledger of past queries, with previews so you can see what a past query looked like without reopening it as a full tab. History entries open as ephemeral preview tabs by default; pinning an entry keeps it in history past the result cache’s TTL, and you can promote a past query out of history into an editable tab.