aminghadersohi commented on PR #45612:
URL: https://github.com/apache/superset/pull/45612#issuecomment-6340145461

   Acceptance at 4f27f242f34b32b4bd82c1d623b1a5b3f21514a6 (local 
docker-compose-light, examples dataset `cleaned_sales_data`, dashboard with 29 
charts and 11 native filters; admin, a Gamma viewer and an embedded guest).
   
   **Works.** Timeseries Drill by from a grained bucket returns the clicked 
bucket's rows. Chart time range "No filter": Day 34, Week 98, Month (Oct 2003) 
158, Quarter (2003 Q4) 524, Year (2003) 1,000, each equal to a SQL count 
(merge-base: 2,823). Under a dashboard Time range `2003-01-01 : 2005-01-01`: 
Oct 2003 158 (merge-base: 2,345). Hours offset ±5h, nested Drill by (754 → 379 
→ 158), Drill by after a cross-filter, CSV export and the Edit chart link agree 
with the clicked bar. Ungrained and categorical Drill by keep the chart and 
dashboard ranges.
   
   Remaining (not fixed, outside this diff): under a dashboard Time grain 
filter set to Year, a Month chart's 2003 bar (1,000) drills to 39 rows (Jan 
2003 only) and a Day chart's to 0, because `EchartsTimeseries.tsx` builds the 
drill bucket from `formData.timeGrainSqla` (the saved grain) at both 
`getTemporalXAxisDrillByFilter` calls, while Drill to detail in the same 
handler uses the resolved grain. Sunburst still sends `order_date == '2003'` 
and returns all 2,823 rows for a 1,000-row ring; it needs 
https://github.com/apache/superset/pull/45571. Minor and pre-existing: on a 
dataset with a timezone west of UTC, Month buckets are one day too long (bar 
296, drill 306) because `getTimeBucketRange` adds a calendar month to a shifted 
label, and a forced-categorical temporal axis shows the raw epoch in the 
breadcrumb.
   
   **Fixed in 4f27f242.** When the chart's own range, a dashboard Time range or 
a time cross-filter covers only part of the bucket, d0ea5a4 queried the whole 
bucket: a Year bar showing 754 under a Jun–Dec 2003 range drilled to 1,000 rows 
(the merge-base gave 754), and a 2003 Q4 bar of 173 under `2003-11-15 : 
2004-02-15` drilled to 524. The modal now resolves the chart's range through 
`/api/v1/time_range/` and queries the overlap: 754 and 173. Regression tests in 
`DrillByModal.test.tsx`, "keeps only the part inside a narrower dashboard time 
range" and "keeps only the part inside the chart's own time range", fail at 
d0ea5a4 and pass at 4f27f242.
   
   Siblings checked:
   - superset-frontend/src/components/Chart/DrillBy/DrillByModal.tsx:395 — 
fixed in 4f27f242
   - superset-frontend/src/components/Chart/DrillBy/DrillByModal.tsx:428 — not 
affected: CSV export uses the same drilled form data; rows 43 / 379 / 332 = 754
   - superset-frontend/src/components/Chart/DrillBy/DrillByModal.tsx:581 — not 
affected: the Edit chart link uses the same drilled form data; stored 
time_range `2003-06-01T00:00:00 : 2004-01-01T00:00:00`
   - superset-frontend/src/components/Chart/DrillBy/DrillByModal.tsx:494 — not 
affected: a nested drill reads the outer range from the original form data; 754 
→ 379 → 158
   - 
superset-frontend/plugins/plugin-chart-echarts/src/Timeseries/EchartsTimeseries.tsx:742
 — not affected: a time cross-filter's range is read as the outer range; a Year 
bar after an Oct 2003 cross-filter drills to 158
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to