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/06/14 13:26:20 UTC
[incubator-datalab] 01/01: [DATALAB-2179, 2318] -- fixed status bugs
This is an automated email from the ASF dual-hosted git repository.
ykinash pushed a commit to branch DATALAB-2179
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit c3a62f1f6ac23138f81c113d36fdb9f82168b005
Author: KinashYurii <ur...@gmail.com>
AuthorDate: Mon Jun 14 16:26:03 2021 +0300
[DATALAB-2179,2318] -- fixed status bugs
---
.../computational/AwsComputationalResource.java | 14 +++---
.../resources/ChangePropertiesResource.java | 52 ----------------------
.../resources/aws/ComputationalResourceAws.java | 1 -
.../CheckInfrastructureStatusScheduler.java | 2 +-
.../service/impl/ComputationalServiceImpl.java | 6 ++-
5 files changed, 13 insertions(+), 62 deletions(-)
diff --git a/services/datalab-model/src/main/java/com/epam/datalab/dto/aws/computational/AwsComputationalResource.java b/services/datalab-model/src/main/java/com/epam/datalab/dto/aws/computational/AwsComputationalResource.java
index 8e9f45c..052e08a 100644
--- a/services/datalab-model/src/main/java/com/epam/datalab/dto/aws/computational/AwsComputationalResource.java
+++ b/services/datalab-model/src/main/java/com/epam/datalab/dto/aws/computational/AwsComputationalResource.java
@@ -42,19 +42,19 @@ import java.util.Map;
public class AwsComputationalResource extends UserComputationalResource {
@JsonProperty("instance_id")
- private String instanceId;
+ private final String instanceId;
@JsonProperty("master_node_shape")
- private String masterShape;
+ private final String masterShape;
@JsonProperty("slave_node_shape")
- private String slaveShape;
+ private final String slaveShape;
@JsonProperty("slave_node_spot")
- private Boolean slaveSpot;
+ private final Boolean slaveSpot;
@JsonProperty("slave_node_spot_pct_price")
- private Integer slaveSpotPctPrice;
+ private final Integer slaveSpotPctPrice;
@JsonProperty("total_instance_number")
- private String slaveNumber;
+ private final String slaveNumber;
@JsonProperty("emr_version")
- private String version;
+ private final String version;
@Builder
public AwsComputationalResource(String computationalName, String computationalId, String imageName,
diff --git a/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java b/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java
index f8ff2ff..73ccb3c 100644
--- a/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java
+++ b/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java
@@ -20,9 +20,7 @@
package com.epam.datalab.backendapi.resources;
import com.epam.datalab.auth.UserInfo;
-import com.epam.datalab.backendapi.core.response.folderlistener.FolderListener;
import com.epam.datalab.backendapi.core.response.folderlistener.WatchItem;
-import com.epam.datalab.backendapi.core.response.folderlistener.WatchItemList;
import com.epam.datalab.properties.ChangePropertiesConst;
import com.epam.datalab.properties.ChangePropertiesService;
import com.epam.datalab.properties.RestartForm;
@@ -34,10 +32,8 @@ import javax.inject.Inject;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
-import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import java.util.function.Predicate;
import static com.epam.datalab.backendapi.core.response.folderlistener.WatchItem.ItemStatus.INPROGRESS;
import static com.epam.datalab.backendapi.core.response.folderlistener.WatchItem.ItemStatus.WAIT_FOR_FILE;
@@ -89,55 +85,7 @@ public class ChangePropertiesResource implements ChangePropertiesConst {
@POST
@Path("/restart")
public Response restart(@Auth UserInfo userInfo, RestartForm restartForm) {
-// checkResponseFiles(restartForm);
changePropertiesService.restart(restartForm);
return Response.ok().build();
}
-
- private void checkResponseFiles(RestartForm restartForm) {
- List<WatchItem> watchItems = new ArrayList<>();
- //or check getFileHandlerCallback().getId()/uuid
-
- FolderListener.getListeners().get(0).getItemList().get(0).getFileHandlerCallback().getUUID();
- FolderListener.getListeners().stream()
- .map(FolderListener::getItemList)
- .forEach(
- x -> {
- for (int i = 0; i < x.size(); i++) {
- log.info("TEST LOG!!!" +
- "watchItem:{}, fileHandlerCallBack: {}, uuid: {}",
- x.get(i), x.get(i).getFileHandlerCallback(),
- x.get(i).getFileHandlerCallback().getId());
- }
- }
- );
-
- boolean isNoneFinishedRequests = FolderListener.getListeners().stream()
- .filter(FolderListener::isAlive)
- .filter(FolderListener::isListen)
- .map(FolderListener::getItemList)
- .anyMatch(findAnyInStatus(watchItems, inProgressStatuses));
- if (isNoneFinishedRequests) {
- log.info("Found unchecked response file from docker : {}." +
- " Provisioning restart is denied", watchItems);
- restartForm.setProvserv(false);
- }
-
- }
-
- private Predicate<WatchItemList> findAnyInStatus(List<WatchItem> watchItems,
- List<WatchItem.ItemStatus> statuses) {
- log.info("TEST LOG!!!" +
- "watchItems:{}, statuses to find: {}", watchItems, statuses);
- return watchItemList -> {
- for (int i = 0; i < watchItemList.size(); i++) {
- if (statuses.contains(watchItemList.get(i).getStatus())) {
- log.info("TEST LOG!!!" +
- "watchItem:{}, status: {}", watchItemList.get(i), watchItemList.get(i).getStatus());
- watchItems.add(watchItemList.get(i));
- }
- }
- return !watchItems.isEmpty();
- };
- }
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/aws/ComputationalResourceAws.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/aws/ComputationalResourceAws.java
index 3725984..baaf397 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/aws/ComputationalResourceAws.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/aws/ComputationalResourceAws.java
@@ -85,7 +85,6 @@ public class ComputationalResourceAws implements ComputationalAPI {
@Path("dataengine-service")
public Response createDataEngineService(@Auth @Parameter(hidden = true) UserInfo userInfo,
@Parameter @Valid @NotNull AwsComputationalCreateForm form) {
-
log.debug("Create computational resources for {} | form is {}", userInfo.getName(), form);
if (DataEngineType.CLOUD_SERVICE == DataEngineType.fromDockerImageName(form.getImage())) {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java
index 0bc5ec0..808a1f2 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java
@@ -51,7 +51,7 @@ public class CheckInfrastructureStatusScheduler implements Job {
private static final List<UserInstanceStatus> statusesToCheck =
Arrays.asList(RUNNING, STARTING, CREATING, CREATING_IMAGE,
- CONFIGURING, STOPPING, RECONFIGURING, STOPPED, TERMINATING);
+ CONFIGURING, STOPPING, RECONFIGURING, STOPPED, TERMINATING, TERMINATED);
private final InfrastructureInfoService infrastructureInfoService;
private final SecurityService securityService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java
index de80e1d..b75ff62 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java
@@ -47,6 +47,7 @@ import com.epam.datalab.rest.contracts.ComputationalAPI;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.inject.name.Named;
+import com.mongodb.client.result.UpdateResult;
import lombok.extern.slf4j.Slf4j;
import java.util.*;
@@ -174,6 +175,7 @@ public class ComputationalServiceImpl implements ComputationalService {
final DataEngineType dataEngineType = compResource.getDataEngineType();
EndpointDTO endpointDTO = endpointService.get(userInstanceDTO.getEndpoint());
ComputationalTerminateDTO dto = requestBuilder.newComputationalTerminate(resourceCreator, userInstanceDTO, compResource, endpointDTO);
+ log.info("!!!TEST LOG!!!: terminate dto: {}", dto);
final String provisioningUrl = Optional.ofNullable(DATA_ENGINE_TYPE_TERMINATE_URLS.get(dataEngineType))
.orElseThrow(UnsupportedOperationException::new);
@@ -346,7 +348,9 @@ public class ComputationalServiceImpl implements ComputationalService {
.withComputationalName(computationalName)
.withStatus(status);
- computationalDAO.updateComputationalStatus(computationalStatus);
+ UpdateResult updateResult = computationalDAO.updateComputationalStatus(computationalStatus);
+ log.info("!!!TEST LOG!!!: after update: {}", updateResult);
+
}
private SparkStandaloneClusterResource createInitialComputationalResource(SparkStandaloneClusterCreateForm form) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org