From 8d8e88c94b46cefd64bf7bfb7e72cd3e6fdaf204 Mon Sep 17 00:00:00 2001 From: Jason Song Date: Tue, 22 Nov 2016 16:06:37 +0800 Subject: [PATCH] fix npe --- .../adminservice/controller/ReleaseHistoryController.java | 2 +- .../com/ctrip/framework/apollo/biz/service/ReleaseService.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apollo-adminservice/src/main/java/com/ctrip/framework/apollo/adminservice/controller/ReleaseHistoryController.java b/apollo-adminservice/src/main/java/com/ctrip/framework/apollo/adminservice/controller/ReleaseHistoryController.java index 3921c8cc9..38739523a 100644 --- a/apollo-adminservice/src/main/java/com/ctrip/framework/apollo/adminservice/controller/ReleaseHistoryController.java +++ b/apollo-adminservice/src/main/java/com/ctrip/framework/apollo/adminservice/controller/ReleaseHistoryController.java @@ -122,7 +122,7 @@ public class ReleaseHistoryController { releaseHistories.add(releaseHistory); //rollback - if (release.isAbandoned()) { + if (release.isAbandoned() && previousRelease != null) { releaseHistory.setDataChangeLastModifiedTime(release.getDataChangeCreatedTime()); ReleaseHistory rollBackReleaseHistory = assembleReleaseHistory(previousRelease, ReleaseOperation.ROLLBACK, release.getId()); diff --git a/apollo-biz/src/main/java/com/ctrip/framework/apollo/biz/service/ReleaseService.java b/apollo-biz/src/main/java/com/ctrip/framework/apollo/biz/service/ReleaseService.java index 3fbe18713..44219e6ff 100644 --- a/apollo-biz/src/main/java/com/ctrip/framework/apollo/biz/service/ReleaseService.java +++ b/apollo-biz/src/main/java/com/ctrip/framework/apollo/biz/service/ReleaseService.java @@ -220,11 +220,12 @@ public class ReleaseService { Map parentConfigurations = parentLatestRelease != null ? gson.fromJson(parentLatestRelease.getConfigurations(), configurationTypeReference) : new HashMap<>(); + long baseReleaseId = parentLatestRelease == null ? 0 : parentLatestRelease.getId(); Map childNamespaceToPublishConfigs = mergeConfiguration(parentConfigurations, childNamespaceItems); Release release = branchRelease(parentNamespace, childNamespace, releaseName, releaseComment, - childNamespaceToPublishConfigs, parentLatestRelease.getId(), operator, + childNamespaceToPublishConfigs, baseReleaseId, operator, ReleaseOperation.GRAY_RELEASE); return release; -- GitLab