diff --git a/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorage.java b/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorage.java index f4aa59c4e41..d2513dad272 100755 --- a/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorage.java +++ b/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorage.java @@ -39,6 +39,7 @@ import java.net.URI; import java.net.URISyntaxException; import java.util.List; +import java.util.concurrent.TimeUnit; import static org.zstack.core.Platform.err; import static org.zstack.core.Platform.operr; @@ -338,7 +339,7 @@ public void success() { cmd.setUuid(self.getUuid()); cmd.setStoragePath(getSelf().getUrl()); cmd.setSendCommandUrl(restf.getSendCommandUrl()); - ConnectResponse rsp = restf.syncJsonPost(url, cmd, ConnectResponse.class); + ConnectResponse rsp = restf.syncJsonPost(url, cmd, ConnectResponse.class, TimeUnit.SECONDS, SftpBackupStorageGlobalProperty.CONNECT_TIMEOUT); if (!rsp.isSuccess()) { ErrorCode err = operr(ORG_ZSTACK_STORAGE_BACKUP_SFTP_10006, "unable to connect to SimpleHttpBackupStorage[url:%s], because %s", url, rsp.getError()); complete.fail(err); diff --git a/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorageGlobalProperty.java b/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorageGlobalProperty.java index ffc6758c3a2..001f4e0cc88 100755 --- a/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorageGlobalProperty.java +++ b/plugin/sftpBackupStorage/src/main/java/org/zstack/storage/backup/sftp/SftpBackupStorageGlobalProperty.java @@ -20,6 +20,8 @@ public class SftpBackupStorageGlobalProperty { public static String AGENT_URL_ROOT_PATH; @GlobalProperty(name="SftpBackupStorage.DownloadCmd.timeout", defaultValue = "7200") public static int DOWNLOAD_CMD_TIMEOUT; + @GlobalProperty(name="SftpBackupStorage.ConnectCmd.timeout", defaultValue = "60") + public static long CONNECT_TIMEOUT; @GlobalProperty(name="MN.network.", defaultValue = "") public static List MN_NETWORKS; }