aliyun / ossfs

Export s3fs for aliyun oss.
GNU General Public License v2.0
742 stars 152 forks source link

fix request hang when flush the writing file #83

Closed xuensheng closed 6 years ago

xuensheng commented 7 years ago

case: fd = open(filename) pid = fork() if(pid == 0) { sleep for a while close(fd) ---- call flush() } else if (pid > 0) { loop write(fd) ---- call write() }

flush holds the entry lock write holds the global lock and waits for the entry lock other requests wait for global lock, and all requests hang

CLAassistant commented 7 years ago

CLA assistant check
Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


ensheng.xes seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

abo969 commented 7 years ago

+1

baiyubin commented 7 years ago

OK