Closed zhanjianS closed 3 months ago
打个 operator 的栈看看,你们集群版本新的话可能 sdk 还是得升级。
打个 operator 的栈看看,你们集群版本新的话可能 sdk 还是得升级。 goroutine 466187 [running].txt
这个是从页面 /api/debug/pprof/ 点击full goroutine stack dump 下载的 你看看有没有用
另外这个是通过点击profile 生成的svg文件
全都没在干活,worker queue 没推送更新。
可能是订阅和 crd 内容不匹配,或者 client 版本太老不兼容。用upgrade-client-go
那个分支试试呢
全都没在干活,worker queue 没推送更新。 可能是订阅和 crd 内容不匹配,或者 client 版本太老不兼容。用
upgrade-client-go
那个分支试试呢
更新了版本 也还是不行,
这个是打印的日志,crd可以创建成功,但是底层pod拉起来要很长时间
这个 在测试的坏境 整体的gravity 通道少的时候没有这个问题,很快就能响应, 我把测试坏境通道数量造到300以上的时候,就会有这种很长时间都不更新的问题,
同时 如果把operator重启后,短时间内是可以的,长时间运行后还是这个现象
有可能是默认的workqueue 有速率限制吗?在数量多的时候处理来不及
这个是/api/debug/pprof/ 采集的默认30s的pprof new-profile.pb.gz
cpu profile 没用,还是看下栈。 不像是速率限制,如果是速率限制应该要看到有同步的对象,但间隔较长。这个日志看起来是什么也没同步。
cpu profile 没用,还是看下栈。 不像是速率限制,如果是速率限制应该要看到有同步的对象,但间隔较长。这个日志看起来是什么也没同步。
需要是这个文件吗
问题已经解决了 在master分支上 的pipelineManager修改 workqueue 初始化 的BucketRateLimiter 有10, 100 改成30,300就可以
workqueue: workqueue.NewNamedRateLimitingQueue( //workqueue.DefaultControllerRateLimiter(), workqueue.NewMaxOfRateLimiter( workqueue.NewItemExponentialFailureRateLimiter(5time.Millisecond, 1000time.Second), // 10 qps, 100 bucket size. This is only for retry speed and its only the overall factor (not per item) &workqueue.BucketRateLimiter{Limiter: rate.NewLimiter(rate.Limit(30), 300)}, ), "Pipeline"),
同 #350 一样, 之前通过重启opeara及删掉一些配置的通道恢复了,
现在 有同样的问题, 现象1: 新建的任务,查看 对应的crd的资源是生成的, opeara的日志会有这种日志
level=info msg="Pipeline[test-tmp-canyin-tidb] updated, enqueue"
但是没创建成功,这个Pipeline没有其他类似 [PipelineManager.processNextWorkItem] Successfully synced 之类的日志 如果重启opeara,这个就会创建成功, 但是之后新建其他任务的不行
现象1: 底层pod 发生重启时, web页面会有一段时间显示不在运行,但是底层pod是在运行中,隔半个小时到1个小时 之后又会恢复
这个是因为处理的线程不够用,通道多了 导致的吗,看代码目前给的是5