diff --git a/pkg/blob/nodeserver.go b/pkg/blob/nodeserver.go index 8c73f8195..fdd7fe17f 100644 --- a/pkg/blob/nodeserver.go +++ b/pkg/blob/nodeserver.go @@ -181,7 +181,11 @@ func (d *Driver) mountBlobfuseInsideDriver(args string, protocol string, authEnv cmd.Env = append(os.Environ(), authEnv...) output, err := cmd.CombinedOutput() klog.V(2).Infof("mount output: %s\n", string(output)) - + if err == nil && protocol == Fuse2 { + // todo: remove this when https://github.com/Azure/azure-storage-fuse/issues/1079 is fixed + klog.V(2).Infof("sleep 2s, waiting for blobfuse2 mount complete") + time.Sleep(2 * time.Second) + } return string(output), err } diff --git a/pkg/blobfuse-proxy/server/server.go b/pkg/blobfuse-proxy/server/server.go index 2f504ba7c..50dfa431e 100644 --- a/pkg/blobfuse-proxy/server/server.go +++ b/pkg/blobfuse-proxy/server/server.go @@ -23,6 +23,7 @@ import ( "os/exec" "strings" "sync" + "time" "google.golang.org/grpc" "k8s.io/klog/v2" @@ -95,6 +96,11 @@ func (server *MountServer) MountAzureBlob(ctx context.Context, if err != nil { return &result, fmt.Errorf("%w %s", err, result.Output) } + if protocol == blob.Fuse2 || server.blobfuseVersion == BlobfuseV2 { + // todo: remove this when https://github.com/Azure/azure-storage-fuse/issues/1079 is fixed + klog.V(2).Infof("sleep 2s, waiting for blobfuse2 mount complete\n") + time.Sleep(2 * time.Second) + } return &result, nil }