-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Description
Description
After upgrading Redash from 10.x to 25.8.0 (Docker image redash/redash:25.8.0), Google Analytics 4 (GA4) queries successfully execute and return data via the API and JSON download, but the built-in table visualization in the UI shows an empty table (no rows).
This used to work before the upgrade.
Environment
Redash version: 25.8.0 (Docker image redash/redash:25.8.0)
Browser: Firefox 144, macOS 10.15 (same behavior in normal and private mode)
Data source: google_analytics4 (GA4)
Steps to Reproduce
Configure a GA4 data source (Google Analytics 4).
Create a simple GA4 query, for example:
{
"dateRanges": [
{ "startDate": "2025-09-01", "endDate": "2025-11-30" }
],
"dimensions": [
{ "name": "country" }
],
"metrics": [
{ "name": "activeUsers" }
]
}
Execute the query in the Redash UI.
Observe:
The query job completes successfully.
The “JSON” tab and the “Download JSON” endpoint both contain non-empty columns and rows.
Switch to the default Table visualization for this query.
Expected Behavior
The table visualization should display the same rows returned by GA4 (e.g. country + activeUsers per row).
Actual Behavior
The query result is not empty:
GET /api/query_results/<result_id> returns a non-empty data payload.
Downloaded JSON contains columns and rows with many records (e.g. "Russia", "Ukraine", etc.).
But the table visualization UI shows an empty table (no rows).
Example API response (trimmed):
{
"query_result": {
"id": 349687,
"query_hash": "32c2afb6c419ed9204453e4c051eec19",
"query": "{ ... GA4 JSON ... }",
"data": "{\"columns\": [{\"name\": \"country\", ...}, {\"name\": \"activeUsers\", ...}], \"rows\": [{\"country\": \"XXXX\", \"activeUsers\": \"24735067\"}, ...]}",
"data_source_id": 24,
"runtime": 2.22,
"retrieved_at": "2025-12-01T12:42:44.916Z"
}
}
Note: data is a JSON string that itself contains { "columns": [...], "rows": [...] }. Despite this, the API and downloaded JSON clearly contain rows; only the table rendering in the UI is empty.
Additional Information / Logs
The query shows as successful in the job log.
No obvious JavaScript errors related to this query in the browser console; mainly unrelated source map warnings like:
Source map error: Error: Content-Length header of network response exceeds response Body.
Resource URL: https://redash.example.com/static/vendors~app.c030fc04c8e7b518de10.js
Source Map URL: vendors~app.c030fc04c8e7b518de10.js.map
The issue did not exist on Redash 10.x: the same GA4 queries used to render correctly in table visualizations before upgrading to 25.8.0.