PG1204 opened a new issue, #9101: URL: https://github.com/apache/texera/issues/9101
### Task Summary `RadarChartOpDesc` and `RadarPlotOpDesc` are two operators that draw the same chart, both listed under Visualization / Scientific as "Radar Chart" and "Radar Plot". Radar Plot is a superset. Remove the duplicate. ### Context Both are registered in `LogicalOp` (`"RadarChart"` and `"RadarPlot"`) and both appear in the palette, so a user wanting a radar chart has to guess which to pick. | | Radar Chart (`visualization/radarChart`) | Radar Plot (`visualization/radarPlot`) | |---|---|---| | Added | #4248, 2026-03-04 | #3500, 2026-04-17 | | Properties | name column, value columns, fill opacity | axes, trace name, trace colour, line pattern, max normalize, fill, markers, legend | | Maintained since | not touched since April | not-blank validation (#5640), unit tests (#5897) | Radar Plot does everything Radar Chart does and adds trace naming and colouring, normalization, line patterns and legend control, and it is the one that has received maintenance. The duplication was accidental rather than deliberate. #3500 was opened before #4248 but merged about six weeks later, so the smaller operator landed first and the fuller one arrived afterwards without the earlier one being removed - the commit that added Radar Plot even touched `RadarChartOpDesc` in the same change. I wrote Radar Chart (#4248), and with Radar Plot covering its functionality there's no reason to keep both. ### Proposed change Remove `RadarChartOpDesc`, its `LogicalOp` registration and its spec, keeping Radar Plot. The open question is what happens to saved workflows. `LogicalOp` registers the type name `"RadarChart"`, so a stored workflow naming it would fail to deserialize once the class is gone. No visualization operator has been removed before, and no existing `sql/updates` migration rewrites `operatorType` inside workflow content, so there is no established pattern to copy. Options for a maintainer to choose between: - a migration rewriting `"RadarChart"` nodes to `"RadarPlot"`, mapping name column → trace name and value columns → axes, with fill opacity dropped as it has no direct equivalent - deprecate first — hide it from the palette while keeping the class so existing workflows still load, and remove it in a later release - remove outright, accepting that affected workflows must be re-created ### Required test Whichever path is chosen, the operator-metadata tests should confirm the palette no longer offers two radar operators, and a migration, if written, needs coverage for a stored workflow carrying the old type. ### Task Type - [x] Refactor / Cleanup - [ ] DevOps / Deployment / CI - [ ] Testing / QA - [ ] Documentation - [ ] Performance - [ ] Other -- 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]
