{"record":{"id":"8b5823fb2905723d","repo":"alibaba/nacos","slug":"failed-to-config-batch-deletion","errorCode":null,"errorMessage":"Failed to config batch deletion","messagePattern":"Failed to config batch deletion","errorType":"exception","errorClass":"NacosConfigException","httpStatus":null,"severity":"error","filePath":"config/src/main/java/com/alibaba/nacos/config/server/service/repository/embedded/EmbeddedConfigInfoPersistServiceImpl.java","lineNumber":535,"sourceCode":"            String idsStr = StringUtils.join(ids, StringUtils.COMMA);\n            List<ConfigAllInfo> oldConfigAllInfoList =\n                findAllConfigInfo4Export(null, null, null, null, ids);\n            if (CollectionUtils.isNotEmpty(oldConfigAllInfoList)) {\n                removeConfigInfoByIdsAtomic(idsStr);\n                for (ConfigAllInfo configAllInfo : oldConfigAllInfoList) {\n                    removeTagByIdAtomic(configAllInfo.getId());\n                    historyConfigInfoPersistService.insertConfigHistoryAtomic(configAllInfo.getId(),\n                        configAllInfo,\n                        srcIp, srcUser, time, \"D\", Constants.FORMAL, null,\n                        ConfigExtInfoUtil.getExtInfoFromAllInfo(configAllInfo));\n                }\n            }\n            \n            EmbeddedStorageContextUtils.onBatchDeleteConfigInfo(oldConfigAllInfoList);\n            boolean result =\n                databaseOperate.update(EmbeddedStorageContextHolder.getCurrentSqlContext());\n            if (!result) {\n                throw new NacosConfigException(\"Failed to config batch deletion\");\n            }\n            \n            return oldConfigAllInfoList;\n        } finally {\n            EmbeddedStorageContextHolder.cleanAllContext();\n        }\n    }\n    \n    @Override\n    public void removeTagByIdAtomic(long id) {\n        ConfigTagsRelationMapper configTagsRelationMapper = mapperManager.findMapper(\n            dataSourceService.getDataSourceType(), TableConstant.CONFIG_TAGS_RELATION);\n        final String sql = configTagsRelationMapper.delete(Collections.singletonList(\"id\"));\n        final Object[] args = new Object[] {id};\n        EmbeddedStorageContextHolder.addSqlContext(sql, args);\n    }\n    \n    @Override","sourceCodeStart":517,"sourceCodeEnd":553,"githubUrl":"https://github.com/alibaba/nacos/blob/9b989acdf181d00898f2e8839257bb2b2a3cefe3/config/src/main/java/com/alibaba/nacos/config/server/service/repository/embedded/EmbeddedConfigInfoPersistServiceImpl.java#L517-L553","documentation":"Error \"Failed to config batch deletion\" thrown in alibaba/nacos.","triggerScenarios":"Thrown at config/src/main/java/com/alibaba/nacos/config/server/service/repository/embedded/EmbeddedConfigInfoPersistServiceImpl.java:535 when the library encounters an invalid state.","commonSituations":"Batch deletion of configs from embedded storage 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"}