gerlowskija commented on code in PR #1126:
URL: https://github.com/apache/solr/pull/1126#discussion_r1009599949
##########
solr/core/src/java/org/apache/solr/handler/admin/CoreAdminOperation.java:
##########
@@ -278,31 +276,28 @@ public enum CoreAdminOperation implements CoreAdminOp {
LISTSNAPSHOTS,
it -> {
final SolrParams params = it.req.getParams();
- String cname = params.required().get(CoreAdminParams.CORE);
+ final String coreName = params.required().get(CoreAdminParams.CORE);
- CoreContainer cc = it.handler.getCoreContainer();
+ final CoreContainer coreContainer = it.handler.getCoreContainer();
+ final SnapshotAPI snapshotAPI = new SnapshotAPI(coreContainer);
- try (SolrCore core = cc.getCore(cname)) {
- if (core == null) {
- throw new SolrException(ErrorCode.BAD_REQUEST, "Unable to locate
core " + cname);
- }
+ final SnapshotAPI.ListSnapshotsResponse response =
snapshotAPI.listSnapshots(coreName);
- SolrSnapshotMetaDataManager mgr = core.getSnapshotMetaDataManager();
- @SuppressWarnings({"rawtypes"})
- NamedList result = new NamedList();
- for (String name : mgr.listSnapshots()) {
- Optional<SnapshotMetaData> metadata =
mgr.getSnapshotMetaData(name);
- if (metadata.isPresent()) {
- NamedList<String> props = new NamedList<>();
- props.add(
- SolrSnapshotManager.GENERATION_NUM,
- String.valueOf(metadata.get().getGenerationNumber()));
- props.add(SolrSnapshotManager.INDEX_DIR_PATH,
metadata.get().getIndexDirPath());
- result.add(name, props);
- }
- }
- it.rsp.add(SolrSnapshotManager.SNAPSHOTS_INFO, result);
+ final NamedList<Object> snapshotsResult = new NamedList<>();
Review Comment:
Oof. I really don't want to defend that original v1 format, which looks
clearly wrong to me. But I think you're right to suspect that changing this
would be a "breaking change" that we should prevent 😞
--
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]