{"record":{"id":"ff5a3a6af757cb73","repo":"alibaba/nacos","slug":"failed-to-save-plugin-state-pluginid","errorCode":null,"errorMessage":"Failed to save plugin state: {pluginId}","messagePattern":"Failed to save plugin state: (.+?)","errorType":"exception","errorClass":"PluginPersistenceException","httpStatus":null,"severity":"error","filePath":"core/src/main/java/com/alibaba/nacos/core/plugin/storage/FilePluginStatePersistenceImpl.java","lineNumber":105,"sourceCode":"    }\n    \n    /**\n     * Save plugin state.\n     *\n     * @param pluginId plugin ID\n     * @param enabled whether the plugin is enabled\n     */\n    @Override\n    public void saveState(String pluginId, boolean enabled) {\n        synchronized (stateLock) {\n            try {\n                Map<String, Boolean> states = loadAllStates();\n                states.put(pluginId, enabled);\n                writeJsonToFile(PLUGIN_STATE_FILE, states);\n                LOGGER.debug(\"[FilePluginStatePersistenceImpl] Saved plugin state: {}={}\", pluginId,\n                    enabled);\n            } catch (Exception e) {\n                throw new PluginPersistenceException(\"Failed to save plugin state: \" + pluginId, e);\n            }\n        }\n    }\n    \n    @Override\n    public void replaceAllStates(Map<String, Boolean> states) {\n        synchronized (stateLock) {\n            try {\n                Map<String, Boolean> statesToStore = states == null\n                    ? new HashMap<>() : new HashMap<>(states);\n                writeJsonToFile(PLUGIN_STATE_FILE, statesToStore);\n                LOGGER.debug(\"[FilePluginStatePersistenceImpl] Replaced all plugin states\");\n            } catch (Exception e) {\n                throw new PluginPersistenceException(\"Failed to replace all plugin states\", e);\n            }\n        }\n    }\n    ","sourceCodeStart":87,"sourceCodeEnd":123,"githubUrl":"https://github.com/alibaba/nacos/blob/9b989acdf181d00898f2e8839257bb2b2a3cefe3/core/src/main/java/com/alibaba/nacos/core/plugin/storage/FilePluginStatePersistenceImpl.java#L87-L123","documentation":"Error \"Failed to save plugin state: {pluginId}\" thrown in alibaba/nacos.","triggerScenarios":"Thrown at core/src/main/java/com/alibaba/nacos/core/plugin/storage/FilePluginStatePersistenceImpl.java:105 when the library encounters an invalid state.","commonSituations":"Persisting a plugin state to disk failed.","solutions":["Inspect the server logs for the underlying cause, fix it, and retry the operation."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"9b989acdf181d00898f2e8839257bb2b2a3cefe3","analyzedAt":"2026-08-14T07:17:31.569Z","schemaVersion":2},"datasetVersion":"2026-08-14T10:17:34.591Z"}