Open strahe opened 1 year ago
In my test environment, when enabling and disabling SyntheticPoRep, the counts for both types of tasks cannot be merged
Hey @strahe! Can you elaborate a bit more on the repro steps here. Are you enabling/disabling the config while the lotus-miner process is running, or shutting it down in between? Is the steps:
export PC1_32G_MAX_CONCURRENT=24
SyntheticPoRep=false
SyntheticPoRep=true
(with or without stopping the lotus-miner?)Hi, thanks for your reply, in my case, i enabling/disabling the config while lotus-miner is running(randomly enabling some and disabling others), but i realize that the real issue doesn't lie here, and even as you mentioned(pledge -> enabling/disabling -> restart -> pledge), this problem can still be reproduced.
When enabling/disabling SyntheticPoRep, the RegisteredSealProof also changes, and this is unrelated to whether lotus-miner is restarted.
So the resource-restrictions are applied in resources.go
, and the RegisteredSealProof for SyntheticPoReps are set to the same as V1 (As V1_1 is also set). But why those limitations are not applied correctly when enabling/disabling and having both SynthPoRep and V1_1 PoReps sealing at the same time is not yet clear to me. I would have to dig a bit further into that.
Another test environment(64G Sector):
So the resource-restrictions are applied in
resources.go
, and the RegisteredSealProof for SyntheticPoReps are set to the same as V1 (As V1_1 is also set). But why those limitations are not applied correctly when enabling/disabling and having both SynthPoRep and V1_1 PoReps sealing at the same time is not yet clear to me. I would have to dig a bit further into that.The same resource limitations apply only to control demands of the same type. For instance, if I set the maximum parallel tasks for PC1 to be 10, and different RegisteredSealProof types(SynthPoRep enabling/disabling) each can run 10 tasks, then they all comply with the resource restrictions. This might result in a total of 20 pc1 tasks running in parallel.
Perhaps we can calculate the sum of the task quantities for both types here:
Checklist
Latest release
, the most recent RC(release canadiate) for the upcoming release or the dev branch(master), or have an issue updating to any of these.Lotus component
Lotus Version
Repro Steps
No response
Describe the Bug
In my test environment, when enabling and disabling SyntheticPoRep, the counts for both types of tasks cannot be merged:
Even though the current worker has already executed 24 PC1 tasks (the maximum I've set), the scheduling system continues to dispatch tasks to the worker, resulting in unexpected errors.
Logging Information