Open yusefnapora opened 4 years ago
Unfortunately, we lose the stdout / stderr from tests running on k8s, so the lotus internal logs are missing for these runs.
I may try running again today with larger worker VMs and the keep_service
flag so I can grab the logs from the kubernetes pods after the run.
This adds a
deals-offline
test case that tries to figure out the client-side scaling limits for proposing and tracking deals (closes #160).The basic flow is:
commP
) and sends the rand seed, file size and commP on the sync serviceImportOfflineDataMsg
on the sync service and generates the file on their end and imports it.ClientListDeals
and dumps the deal states tot.RecordMessage
The miner side of things is currently pretty broken; lots of gas limit errors like this:
There are also some errors about missing deals when sealing kicks in:
However the errors don't seem to immediately fail any deals and apparently the gas issue is affecting real deployments as well.
On the client side, all the proposed deals are making into the chain and are returned by
ClientListDeals
, so I think that this test is still valid for finding the client limits even if the miner is a bit borked.Results so far, running on a k8s cluster with c5.2xlarge workers (8 CPUs, 16GB ram) and a
testground
daemon hacked to have longer timeouts:OOMKilled
after ~10k dealscc @ribasushi @jnthnvctr
btw, @nonsense we may not want to merge this to master yet; I commented out the change to the pre-commit delay in
init.go
to be closer to the production scenario, so it may mess with the window post tests. I'm not sure it actually makes a difference for this test though, so we can probably put it back.