GitHub user dosubot[bot] added a comment to the discussion: How to sort time series column correctly in Time-Series table ?
<!-- Greeting --> Hi @BNyamkhuu! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the superset team. <!-- Answer --> Both issues you're describing — D3-formatted columns sorting lexicographically and Sparkline columns failing to sort — have been identified and fixed in recent PRs: 1. **Column sorting always falling back to the first column** (which affects both D3-formatted and Sparkline columns): The root cause was that the `sortNumberWithMixedTypes` comparator tried to access a `data-value` prop that didn't actually exist in react-table's row model, causing every comparison to return `0` (equal) and fall back to the default first-column sort. This was fixed in [PR #38579](https://github.com/apache/superset/pull/38579) (merged March 19, 2026), which rewrites the sort function to extract the raw numeric value directly from each cell's React props — handling both ValueCell and SparklineCell types [[1]](https://github.com/apache/superset/pull/38579) [[2]](https://github.com/apache/superset/pull/38579). 2. **D3 formatter initialization causing string-based sorting**: A separate issue where `setupFormatters` was called asynchronously (after first render), which could cause numbers to be treated as plain strings. This was fixed in [PR #35529](https://github.com/apache/superset/pull/35529) (merged October 2025) by making the formatter setup synchronous [[3]](https://github.com/apache/superset/pull/35529). Since you're running a Docker image from ~4 months ago (likely pre-dating the March 2026 fix), **upgrading to a newer Superset build that includes PR #38579** should resolve both the D3-format sorting and Sparkline sorting issues you're experiencing. There are also two open PRs that address remaining edge cases: - [PR #38094](https://github.com/apache/superset/pull/38094) — fixes null values being coerced to `0` instead of preserved as `null` [[4]](https://github.com/apache/superset/pull/38094) - [PR #38828](https://github.com/apache/superset/pull/38828) — fixes sorting for date-prefixed or complex column keys where the row value lookup can fail [[5]](https://github.com/apache/superset/pull/38828) <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot?utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=brand-link).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4ae8-be28-052c60e7b4a4?feedback_type=great_response&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4ae8-be28-052c60e7b4a4?feedback_type=irrelevant_answer&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4ae8-be28-052c60e7b4a4?feedback_type=incorrect_sources&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4ae8-be28-052c60e7b4a4?feedback_type=too_verbose&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4a e8-be28-052c60e7b4a4?feedback_type=hallucination&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4ae8-be28-052c60e7b4a4?feedback_type=bug_report&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-bug_report) | [Other](https://app.dosu.dev/response-feedback/bc369e8c-4a89-4ae8-be28-052c60e7b4a4?feedback_type=other&utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=feedback-other)</sup> [](https://app.dosu.dev/a28d3c7e-a9d3-459e-9fb6-3a6f9ff4f357/ask?utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=chat-badge) [](https://cursor.com/link/prompt?text=Both%20issues%20you%27re%20describing%20%E2%80%94%20D3-formatted%20columns%20sorting%20lexicographically%20and%20Sparkline%20columns%20failing%20to%20sort%20%E2%80%94%20have%20been%20identified%20and%20fixed%20in%20recent%20PRs%3A%0A%0A1.%20%2A%2AColumn%20sorting%20always%20falling%20back%20to%20the%20first%20column%2A%2A%20%28which%20affects%20both%20D3-formatted%20and%20Sparkline%20columns%29%3A%20The%20root%20cause%20was%20that%20the%20%60sortNumberWithMixedTypes%60%20comparator%20tried%20to%20access%20a%20%60data-value%60%20prop%20that%20didn%27t%20actually%20exist%20in%20react-table%27s%20row%20model%2C%20causing%20every%20comparison%20to%20return%20%600%60%20%28equal%29% 20and%20fall%20back%20to%20the%20default%20first-column%20sort.%20This%20was%20fixed%20in%20%5BPR%20%2338579%5D%28https%3A//github.com/apache/superset/pull/38579%29%20%28merged%20March%2019%2C%202026%29%2C%20which%20rewrites%20the%20sort%20function%20to%20extract%20the%20raw%20numeric%20value%20directly%20from%20each%20cell%27s%20React%20props%20%E2%80%94%20handling%20both%20ValueCell%20and%20SparklineCell%20types%20%5B%5B1%5D%5D%28https%3A//github.com/apache/superset/pull/38579%29%20%5B%5B2%5D%5D%28https%3A//github.com/apache/superset/pull/38579%29.%0A%0A2.%20%2A%2AD3%20formatter%20initialization%20causing%20string-based%20sorting%2A%2A%3A%20A%20separate%20issue%20where%20%60setupFormatters%60%20was%20called%20asynchronously%20%28after%20first%20render%29%2C%20which%20could%20cause%20numbers%20to%20be%20treated%20as%20plain%20strings.%20This%20was%20fixed%20in%20%5BPR%20%2335529%5D%28https%3A//github.com/apache/superset/pull/35529%29%20%28merged%20October%202025%29%20by%20making%20 the%20formatter%20setup%20synchronous%20%5B%5B3%5D%5D%28https%3A//github.com/apache/superset/pull/35529%29.%0A%0ASince%20you%27re%20running%20a%20Docker%20image%20from%20~4%20months%20ago%20%28likely%20pre-dating%20the%20March%202026%20fix%29%2C%20%2A%2Aupgrading%20to%20a%20newer%20Superset%20build%20that%20includes%20PR%20%2338579%2A%2A%20should%20resolve%20both%20the%20D3-format%20sorting%20and%20Sparkline%20sorting%20issues%20you%27re%20experiencing.%0A%0AThere%20are%20also%20two%20open%20PRs%20that%20address%20remaining%20edge%20cases%3A%0A%0A-%20%5BPR%20%2338094%5D%28https%3A//github.com/apache/superset/pull/38094%29%20%E2%80%94%20fixes%20null%20values%20being%20coerced%20to%20%600%60%20instead%20of%20preserved%20as%20%60null%60%20%5B%5B4%5D%5D%28https%3A//github.com/apache/superset/pull/38094%29%0A-%20%5BPR%20%2338828%5D%28https%3A//github.com/apache/superset/pull/38828%29%20%E2%80%94%20fixes%20sorting%20for%20date-prefixed%20or%20complex%20column%20keys%20where%20the%20row%20 value%20lookup%20can%20fail%20%5B%5B5%5D%5D%28https%3A//github.com/apache/superset/pull/38828%29) [](https://go.dosu.dev/discord-bot?utm_source=github&utm_medium=bot-comment&utm_campaign=github-assistant&utm_content=join-discord) [](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/superset/discussions/38937) GitHub link: https://github.com/apache/superset/discussions/38937#discussioncomment-16375648 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
