You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by yk...@apache.org on 2021/07/21 11:05:11 UTC

[incubator-datalab] 01/01: [DATALAB-2519] -- fixed scheduler

This is an automated email from the ASF dual-hosted git repository.

ykinash pushed a commit to branch DATALAB-2519
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git

commit b377780b09b0a5814f61c0cef0c256f593219a7c
Author: KinashYurii <ur...@gmail.com>
AuthorDate: Wed Jul 21 14:03:48 2021 +0300

    [DATALAB-2519] -- fixed scheduler
---
 .../handlers/ResourcesStatusCallbackHandler.java   | 24 ++++++++++++++--------
 .../resources/callback/ProjectCallback.java        |  2 ++
 .../service/impl/ProjectServiceImpl.java           |  5 ++---
 3 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/core/response/handlers/ResourcesStatusCallbackHandler.java b/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/core/response/handlers/ResourcesStatusCallbackHandler.java
index bc0a34c..db08a7c 100644
--- a/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/core/response/handlers/ResourcesStatusCallbackHandler.java
+++ b/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/core/response/handlers/ResourcesStatusCallbackHandler.java
@@ -31,6 +31,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.databind.JsonNode;
 import lombok.extern.slf4j.Slf4j;
+import org.bouncycastle.util.Strings;
 
 import java.io.IOException;
 import java.time.Instant;
@@ -38,7 +39,6 @@ import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
-import java.util.Optional;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
@@ -71,6 +71,7 @@ public class ResourcesStatusCallbackHandler extends ResourceCallbackHandler<EnvS
         } catch (IOException e) {
             throw new DatalabException("Docker response for UUID " + getUUID() + " not valid: " + e.getLocalizedMessage(), e);
         }
+        log.info("TEST LOG!!!: envList: {}", cloudResourceList);
 
         EnvResourceList envResourceList = EnvResourceList.builder()
                 .hostList(getListOrEmpty(cloudResourceList.getHostList()))
@@ -87,7 +88,7 @@ public class ResourcesStatusCallbackHandler extends ResourceCallbackHandler<EnvS
     }
 
     private String checkAndMapStatus(String status) {
-        if (status.equalsIgnoreCase ("terminated_with_errors")) {
+        if (status.equalsIgnoreCase("terminated_with_errors")) {
             log.trace("While parsing response changed: {} -> {}", status, UserInstanceStatus.TERMINATED);
             return UserInstanceStatus.TERMINATED.toString();
         } else {
@@ -97,6 +98,8 @@ public class ResourcesStatusCallbackHandler extends ResourceCallbackHandler<EnvS
 
     @Override
     public boolean handle(String fileName, byte[] content) {
+        log.info("TEST LOG!!!: content: {}", Strings.fromByteArray(content));
+
         try {
             return super.handle(fileName, content);
         } catch (Exception e) {
@@ -117,12 +120,14 @@ public class ResourcesStatusCallbackHandler extends ResourceCallbackHandler<EnvS
     }
 
     private List<EnvResource> getChangedEnvResources(List<EnvResource> envResources) {
-        return envResources
-                .stream()
-                .filter(e -> !e.getStatus().equals(datalabHostResources.get(e.getId()).getStatus()))
-                .map(e -> datalabHostResources.get(e.getId())
-                        .withStatus(checkAndMapStatus(e.getStatus())))
-                .collect(Collectors.toList());
+        if (envResources != null)
+            return envResources
+                    .stream()
+                    .filter(e -> !e.getStatus().equals(datalabHostResources.get(e.getId()).getStatus()))
+                    .map(e -> datalabHostResources.get(e.getId())
+                            .withStatus(checkAndMapStatus(e.getStatus())))
+                    .collect(Collectors.toList());
+        else return Collections.emptyList();
     }
 
     private Map<String, EnvResource> getEnvResources(EnvResourceList envResources) {
@@ -131,6 +136,7 @@ public class ResourcesStatusCallbackHandler extends ResourceCallbackHandler<EnvS
     }
 
     private List<EnvResource> getListOrEmpty(List<EnvResource> source) {
-        return getChangedEnvResources(Optional.of(source).orElse(Collections.emptyList()));
+        log.info("TEST LOG!!!: source: {}", source);
+        return getChangedEnvResources(source);
     }
 }
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java
index d8c70d9..b84247b 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java
@@ -64,6 +64,7 @@ public class ProjectCallback {
 
     @POST
     public Response updateProjectStatus(ProjectResult projectResult) {
+        log.info("TEST LOG!!!: projectResult: {}", projectResult);
         try {
             requestId.checkAndRemove(projectResult.getRequestId());
             final String projectName = projectResult.getProjectName();
@@ -76,6 +77,7 @@ public class ProjectCallback {
                 projectDAO.updateEdgeStatus(projectName, projectResult.getEndpointName(), status);
             }
         } catch (Exception e) {
+            log.error(e.toString());
             log.error(e.getMessage());
             log.info("Run scheduler");
             scheduler.execute(null);
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java
index 4df5d92..f5bb227 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java
@@ -202,8 +202,7 @@ public class ProjectServiceImpl implements ProjectService {
                 .forEach(e -> stop(userInfo, e.getName(), projectName, null));
 
         exploratoryDAO.fetchRunningExploratoryFieldsForProject(projectName,
-                endpointDTOs
-                        .stream()
+                endpointDTOs.stream()
                         .map(ProjectEndpointDTO::getName)
                         .collect(Collectors.toList()))
                 .forEach(e -> exploratoryService.stop(userInfo, e.getUser(), projectName, e.getExploratoryName(), null));
@@ -282,7 +281,7 @@ public class ProjectServiceImpl implements ProjectService {
     private void createProjectOnCloud(UserInfo user, ProjectDTO project) {
         try {
             project.getEndpoints().forEach(e -> createEndpoint(user, project, e.getName(), project.getName(),
-                            String.format(AUDIT_ADD_EDGE_NODE, e.getName(), project.getName())));
+                    String.format(AUDIT_ADD_EDGE_NODE, e.getName(), project.getName())));
         } catch (Exception e) {
             log.error("Can not create project due to: {}", e.getMessage(), e);
             projectDAO.updateStatus(project.getName(), ProjectDTO.Status.FAILED);

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org