瀏覽代碼

!10572 增加拷贝时的重试
Merge pull request !10572 from 80174847/oilyang_fixed_everything

杨诗友80174847 10 月之前
父節點
當前提交
ad3a15583d
共有 1 個文件被更改,包括 10 次插入0 次删除
  1. 10 0
      Module/mod_vtmloader/VtmLoaderFSM.cpp

+ 10 - 0
Module/mod_vtmloader/VtmLoaderFSM.cpp

@@ -1003,6 +1003,7 @@ int CVtmLoaderFSM::NetWorkCheckAndGetSetting()
 		GetEntityBase()->GetFunction()->SetSysVar("TerminalStage", "N");
 	}
 	//oilyang@20241017 to check if have copied dep directory
+	int copyTries = 0;
 	while (true)
 	{
 		if (m_eDepCopyStage == DepDirInitCopy_NoNeed || m_eDepCopyStage == DepDirInitCopy_CopySuc)
@@ -1019,6 +1020,15 @@ int CVtmLoaderFSM::NetWorkCheckAndGetSetting()
 		{
 			LogWarn(Severity_High, Error_Unexpect, VtmLoader_DepDirCopyFailed, "厂商适配器Dep文件拷贝失败,请联系分行IT排查是否安全软件干扰文件拷贝");
 			Sleep(60000);
+			copyTries++;
+			if (copyTries > 4)
+			{
+				DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("have tried %d times, give up", copyTries);
+				return -1;
+			}
+			m_eDepCopyStage = DepDirInitCopy_Copying;
+			CopyDepFilesToNewDepPathTask* pCopyTask = new CopyDepFilesToNewDepPathTask(this);
+			GetEntityBase()->GetFunction()->PostThreadPoolTask(pCopyTask);
 		}
 	}
 	return EntityLoad();