Description
When a table is created using a name containing specific special characters (HTML/XML tags and namespaces), pgAdmin4 becomes unresponsive (hangs) upon attempting to "Reset Statistics" for that specific object.
Environment Details
• OS: Windows 11
• PostgreSQL Version: 18.3 (EDB Distribution)
• pgAdmin4 Version: 9.14
• Browser (if applicable): Desktop App
Steps to Reproduce
- Launch pgAdmin4 and connect to a server.
- Open the Query Tool on any database (e.g., postgres).
- Execute the following DDL to create a table with a malformed/complex name:
SQL
CREATE TABLE IF NOT EXISTS public."<?xml:namespace prefix=""t"" ns=""urn:schemas-microsof"
(
-- No columns required for reproduction
)
TABLESPACE pg_default;
- Locate the newly created table in the Browser Tree (under Schema > Tables).
- Right-click on the table name.
- Select Maintenance... or Reset Statistics from the context menu.
- Observe the application behavior.
Expected Result
The statistics should be reset successfully, or a standard error message should appear if the name causes a syntax conflict. The UI should remain responsive.
Actual Result
pgAdmin4 hangs indefinitely. The application becomes unresponsive, requiring a forced task termination (End Task) to close.
Analysis / Root Cause Hypothesis
The issue likely stems from how pgAdmin4 handles the sanitization or parsing of the table name when passing it to the internal statistics-reset function. The presence of and <?xml:namespace may be interfering with the underlying JavaScript/Python communication or causing a rendering loop in the UI.

Description
When a table is created using a name containing specific special characters (HTML/XML tags and namespaces), pgAdmin4 becomes unresponsive (hangs) upon attempting to "Reset Statistics" for that specific object.
Environment Details
• OS: Windows 11
• PostgreSQL Version: 18.3 (EDB Distribution)
• pgAdmin4 Version: 9.14
• Browser (if applicable): Desktop App
Steps to Reproduce
SQL
CREATE TABLE IF NOT EXISTS public."<?xml:namespace prefix=""t"" ns=""urn:schemas-microsof"
(
-- No columns required for reproduction
)
TABLESPACE pg_default;
Expected Result
The statistics should be reset successfully, or a standard error message should appear if the name causes a syntax conflict. The UI should remain responsive.
Actual Result
pgAdmin4 hangs indefinitely. The application becomes unresponsive, requiring a forced task termination (End Task) to close.
Analysis / Root Cause Hypothesis
The issue likely stems from how pgAdmin4 handles the sanitization or parsing of the table name when passing it to the internal statistics-reset function. The presence of and <?xml:namespace may be interfering with the underlying JavaScript/Python communication or causing a rendering loop in the UI.