Prevent writting applications to get to much rozofsmount resources
The writes are done asynchronously in rozofs while the read are
synchronous. An application that writes a file in rozofs gets back
a response before the data is actually written to the disk. It can so
immediatly request to write more data. There is no limit on the data
quantity that it can submit for writting to rozofs. Each of these write
request that requires a flush toward the STORIO will take a transaction
context in rozofsmount until it is responded by the STORCLI.
To prevent writting applications to take all the resources, some limit can
be set thanks the mounting parameter "rozofsmaxpendingwrite". It gives the
number of write requests that can be sent for an open file from the
rozofsmount toward the STORCLI asynchronously. If an extra request is
received, it will be processed synchronously.
A value of 0 MEANS THAT every write is done synchronously.
When set to N the N first write request are done asynchronously. If request
N+1 is received while the N previous request are still pending in STORCLI,
the new request will be responded only once the response is received from
the STORCLI.
A debug command write_flush enables to change the value or to see how much
write flush have been done synchronously on not synchronously..
Merge branch 'develop' of https://github.com/rozofs/rozofs into develop