relab / hotstuff

MIT License
172 stars 53 forks source link

Unable to download the metric logs from the nodes in the controller node. #46

Closed hanish520 closed 2 years ago

hanish520 commented 2 years ago

When we run the experiment on the remote nodes with metrics enabled, the controller node cannot download these logs.

This issue is because the path used in the host structure for the "data-dir" value is malformed. An example value for this value is "tmp/hotstuff.BpLnfgDs/data", missing a starting "/". The problem is the same for "test-dir."

I modified the below line to "src, err := iago.NewPathFromAbs("/"+iago.GetStringVar(host, "data-dir"))" and it is working. https://github.com/relab/hotstuff/blob/1c6a4ac263bf2a72f9cb2563cc451aec559a5a8a/internal/orchestration/deploy.go#L110

I guess there is a better way to fix this.

johningve commented 2 years ago

Well, it's not really malformed as such. It's just that the io/fs package and hence also wrfs allow only unrooted paths (see ValidPath). The Deploy function was correctly removing the root prefix from the data directory, but the code in FetchData was handling the data directory path as if it was still a rooted path.

Fixed in 8a23ebf