首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >分级任务间歇性失败

分级任务间歇性失败
EN

Stack Overflow用户
提问于 2020-09-15 09:35:19
回答 2查看 109关注 0票数 0

在运行分级任务时,它会间歇性地失败(在avg上10次中有1-2次失败,这是没有意义的)。

代码语言:javascript
运行
AI代码解释
复制
task runIntProxy(dependsOn: [':int-proxy:getVersions',':infrastructure:dev:startNginx']) {
  group 'start'
  description 'Starts int-proxy'
    doLast {
        file(logsDir).mkdirs()
        def imageTag = readVersion('int_proxy_image_tag')

        command("docker-compose ${composeFiles} up -d", ['env': ['INT_PROXY_IMAGE_TAG': imageTag]])
        command("docker-compose ${composeFiles} logs -f", ['printOutput': false, 'waitForExit': false, 'outputFile': "$logsDir/int-proxy.log"])

        quiet "Running healthchecks:"
        println(intProxyStatus)
        try {
        def response = new URL(intProxyStatus).getContent().text
        println("output from URL:" + response)
      
        if(response.contains("alive")){
          quiet("Int-proxy is up and running")
        } else {
          throw new GradleException("Int-proxy is not up!")
        }
        } catch (GradleException e) { }
    }
}

因为它错误地失败了(当手动执行相同的任务时,它工作得很好,但是与jenkins一起失败了),我添加了catch (GradleException e) {},但是它仍然断断续续地失败了,有人能指出我遗漏了什么吗?

错误代码如下

代码语言:javascript
运行
AI代码解释
复制
* What went wrong:
Execution failed for task ':int-proxy:runIntProxy'.
> java.net.SocketException: Connection reset

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':int-proxy:runIntProxy'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$2.accept(ExecuteActionsTaskExecuter.java:121)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$2.accept(ExecuteActionsTaskExecuter.java:117)
    at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:184)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:110)
    at org.gradle.api.internal.tasks.execution.ResolveIncrementalChangesTaskExecuter.execute(ResolveIncrementalChangesTaskExecuter.java:84)
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:92)
    at org.gradle.api.internal.tasks.execution.FinishSnapshotTaskInputsBuildOperationTaskExecuter.execute(FinishSnapshotTaskInputsBuildOperationTaskExecuter.java:51)
    at org.gradle.api.internal.tasks.execution.ResolveBuildCacheKeyExecuter.execute(ResolveBuildCacheKeyExecuter.java:103)
    at org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionStateTaskExecuter.execute(ResolveBeforeExecutionStateTaskExecuter.java:75)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:110)
    at org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionOutputsTaskExecuter.execute(ResolveBeforeExecutionOutputsTaskExecuter.java:67)
    at org.gradle.api.internal.tasks.execution.StartSnapshotTaskInputsBuildOperationTaskExecuter.execute(StartSnapshotTaskInputsBuildOperationTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.ResolveAfterPreviousExecutionStateTaskExecuter.execute(ResolveAfterPreviousExecutionStateTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:94)
    at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:95)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:63)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:49)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:46)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:416)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:406)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:102)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
    at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:43)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:355)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:134)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker$1.execute(DefaultPlanExecutor.java:129)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:202)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:193)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:129)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.UncheckedIOException: java.net.SocketException: Connection reset
    at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:61)
    at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:41)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$4.run(ExecuteActionsTaskExecuter.java:367)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:402)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:394)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:165)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:250)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:158)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:92)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:326)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:311)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$200(ExecuteActionsTaskExecuter.java:75)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:158)
    at org.gradle.internal.execution.impl.steps.ExecuteStep.execute(ExecuteStep.java:46)
    at org.gradle.internal.execution.impl.steps.CancelExecutionStep.execute(CancelExecutionStep.java:34)
    at org.gradle.internal.execution.impl.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:69)
    at org.gradle.internal.execution.impl.steps.TimeoutStep.execute(TimeoutStep.java:49)
    at org.gradle.internal.execution.impl.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
    at org.gradle.internal.execution.impl.steps.CreateOutputsStep.execute(CreateOutputsStep.java:49)
    at org.gradle.internal.execution.impl.steps.SnapshotOutputStep.execute(SnapshotOutputStep.java:42)
    at org.gradle.internal.execution.impl.steps.SnapshotOutputStep.execute(SnapshotOutputStep.java:28)
    at org.gradle.internal.execution.impl.steps.CacheStep.executeWithoutCache(CacheStep.java:136)
    at org.gradle.internal.execution.impl.steps.CacheStep.lambda$execute$5(CacheStep.java:86)
    at org.gradle.internal.execution.impl.steps.CacheStep.execute(CacheStep.java:85)
    at org.gradle.internal.execution.impl.steps.CacheStep.execute(CacheStep.java:37)
    at org.gradle.internal.execution.impl.steps.PrepareCachingStep.execute(PrepareCachingStep.java:33)
    at org.gradle.internal.execution.impl.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:38)
    at org.gradle.internal.execution.impl.steps.StoreSnapshotsStep.execute(StoreSnapshotsStep.java:23)
    at org.gradle.internal.execution.impl.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:95)
    at org.gradle.internal.execution.impl.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:88)
    at org.gradle.internal.execution.impl.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:52)
    at org.gradle.internal.execution.impl.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:36)
    at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:34)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:109)
    ... 40 more
Caused by: java.net.SocketException: Connection reset
    at java_net_URL$getContent$0.call(Unknown Source)
    at build_4hqoiddv5luerpje0uiotdsrg$_run_closure4$_closure14.doCall(/home/jenkins/workspace/development/int-proxy/build.gradle:63)
    at org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:644)
    at org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:617)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$4.run(ExecuteActionsTaskExecuter.java:337)
    ... 72 more

此外,我们还调查了服务是否已结束。

代码语言:javascript
运行
AI代码解释
复制
if(!waitForNoConnection(intProxyStatus, 5, 5, 15)) {
      throw new GradleException("Couldn't stop int-proxy. You might need to forcefully kill it yourself.")
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-09-18 03:21:09

问题是容器出现了,但不知怎的服务并没有出现,需要一些时间,增加了15秒的睡眠,一切都开始好起来了。

票数 0
EN

Stack Overflow用户

发布于 2020-09-15 13:17:53

根本原因是java.net.SocketException: Connection reset

这意味着网络有问题:

服务器可能没有运行或者reachable

  • Maybe您试图连接到错误的IP/hostname

  • Maybe服务器关闭了连接因为一些内部错误

  • 可能传输太慢和连接超时

  • 可能有一个糟糕的防火墙,等等。

您是否已经手动尝试了足够多次,以确保99.9%没有手动发生?您在同一台机器上试用过吗?使用相同版本的Java、Gradle和其他任何东西吗?你有没有确保这个问题与时间或速度无关?

我最初的想法是启动一个坞容器,然后向服务发出一个URL请求,但是您忘记了容器启动是异步的。换句话说,您无法保证服务将在docker-组合完成时实际运行。但这只是猜测。

尝试在发出URL请求之前添加一个延迟,以查看它是否有任何更改。正确的方法是在循环中轮询URL,直到服务出现或超时。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63907145

复制
相关文章
Hadoop 任务运行失败
任务运行失败最常见的情况是 map 任务或 reduce 任务中的用户代码抛出运行异常。如果发生这种情况,任务 JVM 会在退出之前向其父 application master 发送错误报错。错误报告最后被记入用户日志中。application master 会将此次任务尝试标记为 failed (失败),并释放容器以便资源可以为其他任务使用。
smartsi
2019/08/07
3K0
spark任务之Task失败监控
在spark程序中,task有失败重试机制(根据 spark.task.maxFailures 配置,默认是4次),当task执行失败时,并不会直接导致整个应用程序down掉,只有在重试了 spark.task.maxFailures 次后任然失败的情况下才会使程序down掉。另外,spark on yarn模式还会受yarn的重试机制去重启这个spark程序,根据 yarn.resourcemanager.am.max-attempts 配置(默认是2次)。
UFO
2018/08/29
2.9K0
Celery 4.3.0 任务失败重试机制
在异步调用任务中经常需要调用第三方的api请求,如果一次执行失败,则应该进行重试执行。否则,如果在执行一些连续性的chain链条任务,前面执行失败,那么后续的也就不用执行了。
Devops海洋的渔夫
2019/10/23
3.8K0
GPU内存分级
在NVIDIA的GPU中,内存(GPU的内存)被分为了全局内存(Global memory)、本地内存(Local memory)、共享内存(Shared memory)、寄存器内存(Register memory)、常量内存(Constant memory)、纹理内存(Texture memory)六大类。这六类内存都是分布在在RAM存储芯片或者GPU芯片上,他们物理上所在的位置,决定了他们的速度、大小以及访问规则。
刘盼
2018/07/26
7.2K0
GPU内存分级
独家 | ChatGPT可以解决分级和分类这样的简单机器学习任务
作者:Damir Yalalov  翻译:陈超校对:赵茹萱 本文约1100字,建议阅读5分钟本文介绍了ChatGPT如何解决简单的机器学习任务并给出了鸢尾花分类和城市预测两个案例。 一句话概括: ChatGPT可以帮助你完成简单的机器学习任务——以下是方法: ChatGPT是一个聊天机器人,可以帮助你完成简单的机器学习任务,例如分级和分类任务。 它会用一种自然语言处理算法来理解你的问题并提供准确的答案。 你可以给ChatGPT提供更多的数据用以训练它实现更加准确地输出。这一工具设计的初衷就是为了方便使用,并
数据派THU
2023/04/25
4400
独家 | ChatGPT可以解决分级和分类这样的简单机器学习任务
MCE | 间歇性禁食增强抗癌疗效
越来越多的研究表明,“禁食”不仅与免疫系统调控 、血糖调节有关,还对多种疾病的治疗有改善效果,如心血管疾病和癌症等。
MedChemExpress
2023/03/16
3430
MCE | 间歇性禁食增强抗癌疗效
车站分级 拓扑排序
车站分级 从起点到终点,只会在大于等于它等级的站点停靠,则小于它的不停靠 就从小于它的连一条边到它,然后拓扑 #include <bits/stdc++.h> #define pir pair<int,int> using namespace std; const int N = 1050; int in[N],n,m,ans; int book[N][N],s[N][N]; int vis[N]; queue<pir> q; vector<int> g[N]; int read(){ int x=0,
用户2965768
2019/04/17
4580
【Google Play】IARC 年龄分级 ( IARC 国际年龄分级联盟 | Google Play 设置应用年龄分级 )
【Google Play】创建 Google 开发者账号 ( 注册邮箱账号 | 创建开发者账号 ) 【Google Play】创建并设置应用 ( 访问权限 | 内容分级 | 受众群体 | 类别及联系方式 | 商品详情 )
韩曙亮
2023/03/29
2.5K0
【Google Play】IARC 年龄分级 ( IARC 国际年龄分级联盟 | Google Play 设置应用年龄分级 )
VS2010 网站发布失败: TransformXml任务意外失败 问题解决
今天发布网站时意外出现了发布失败的提示:“TransformXml”任务意外失败。
KenTalk
2018/09/11
1.4K0
Storm客户端提交任务失败原因分析
storm客户端提交topology失败: java.lang.RuntimeException: org.apache.thrift7.transport.TTransportException at backtype.storm.StormSubmitter.submitTopology(StormSubmitter.java:141) at backtype.storm.StormSubmitter.submitTopologyWithProgressBar(Storm
囚兔
2018/05/30
2K0
Gradle如何在任务失败后继续构建
如果我们运行Gradle构建并且其中一项任务失败,则整个构建将立即停止。因此,我们可以快速反馈构建状态。如果我们不想这样做,并且希望Gradle执行所有任务,即使某些任务可能失败了,我们也可以使用命令行选项--continue。当我们使用--continue命令行选项时,Gradle将执行从属任务没有失败的所有任务。这在多模块项目中也很有用,即使在某些项目中测试可能失败,我们也可能希望构建所有项目,因此我们可以全面了解所有模块的失败测试。
FunTester
2019/12/04
1.6K0
勒索软件新技术趋势:间歇性加密
2021 年夏天,LockFile 勒索软件是首批引入间歇性加密技术的勒索软件家族之一。后来,越来越多的勒索软件都应用了这一技术。
FB客服
2022/11/14
9660
勒索软件新技术趋势:间歇性加密
P1983 车站分级
题目描述 一条单向的铁路线上,依次有编号为 1, 2, …, n 的 n 个火车站。每个火车站都有一个级别,最低为 1 级。现有若干趟车次在这条线路上行驶,每一趟都满足如下要求:如果这趟车次停靠了火车
attack
2018/04/13
5880
P1983 车站分级
解决ASP.NET MVC间歇性响应缓慢
经查看发现好多地方设置了 $.ajaxSettings.async = false;,方法执行完毕后没有设置异步。 全部修改之后,发现请求还是慢,打断点发现控制台显示耗时几十秒的请求,实际执行一两秒左右,前端同时发送5个Ajax请求,结果却是同步返回的,或者可以说后端做了同步的处理。
鱼找水需要时间
2023/02/16
7250
数据的分类和分级
《中华人民共和国网络安全法》第二十一条规定国家实行网络安全等级保护制度。网络运营者应当按照网络安全等级保护制度的要求,履行下列安全保护义务,保障网络免受干扰、破坏或者未经授权的访问,防止网络数据泄露或者被窃取、篡改:同时提到采取数据分类、重要数据备份和加密等措施。
Dlimeng
2023/06/30
1.7K0
主机名修改后导致计划任务失败
原来在一台Windows 2008服务器上配置了一个SVN UPDATE的计划任务,定期将版本库中的最新版本抓取到本地。在主机名更改后,计划任务执行失败,提示“所指定的账户名称无效”。
大江小浪
2018/07/24
1.2K0
主机名修改后导致计划任务失败
scrapy间歇性响应为空/降速/缓存
使用 scrapy访问豆瓣的搜索接口时,莫名会出现response json数据为空的情况。 加上回调重新请求 (要设置dont_filter=True 防止被过滤), 还是会出现异常。 最后发现是请求速度过快导致的。
李玺
2021/11/22
7790
scrapy间歇性响应为空/降速/缓存
使用elastic job 不分片任务加载失败的可能原因
有一个任务是每10分钟,加载一次过去20分钟的内容,但是总有加载漏掉的时候。 此情况出现3次了,事不过三。看了服务也一直跑得很健康。
MickyInvQ
2020/09/27
8000
使用elastic job 不分片任务加载失败的可能原因
SDN:优雅的间歇性访问限制
一、项目简介 目的:设有一台PC机(Host1),一台Web服务器(Host2)提供简单的静态网页访问服务。通过RYU控制网络流,限制PC访问服务器的频率,如两次访问的间隔不能低于5秒。 应用场景: ①为 付费用户 和 免费用户 提供差异化服务 ②小型站点、个人站点、未做优化站点的负载缓解 ③…… 在详细了解TCP三次握手、四次挥手、RST强制重置,以及HTTP包交互全程的基础上,本项目达成了以下特色: 限制访问时,返回给PC友好的WEB页面提示,而不是仅仅通过流表把包丢弃,以及由此导致的PC用户浏览器持续
SDNLAB
2018/04/03
9670
SDN:优雅的间歇性访问限制
点击加载更多

相似问题

分级jacocoTestReport任务失败

15

分级复制任务静默失败

33

分级compileJava任务不断失败

23

分级执行任务失败

14

如果任务失败,分级任务doLast

39
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文