verdier commented on issue #42567: URL: https://github.com/apache/superset/issues/42567#issuecomment-5117747218
One more data point that may help localise this. We ran the identical workload — same Superset instance, same physical dataset, same `asyncio.gather` shape, same concurrency levels — through a **REST-API client** instead of the built-in MCP service. That path creates charts via `POST /api/v1/chart/`, so each call is a separate HTTP request served by the web tier rather than an in-process task. | concurrency | built-in MCP `generate_chart` | REST API | |---|---|---| | 1 | 1/1 | 1/1 | | 2 | 2/2 | 2/2 | | 5 | 2/5 | 5/5 | | 10 | 4/10 | 10/10 | | 20 | 1/20 | 20/20 | Zero `DetachedInstanceError` on the REST path at any level, and every expected `slices` row present. So chart creation itself handles this load fine — the failure is specific to how `mcp_service` manages the session/app-context lifecycle around the command, not to `CreateChartCommand` or the ORM mapping. That also matches `generate_dashboard` being unaffected: it re-queries the user inside the tool's own session (`generate_dashboard.py:301-317`). Happy to run a candidate patch against the same harness if that would help. -- 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]
