Benjamin Bannier created MESOS-9331:
---------------------------------------

             Summary: Some library functions ignore failures from ::close which 
should probably be handled.
                 Key: MESOS-9331
                 URL: https://issues.apache.org/jira/browse/MESOS-9331
             Project: Mesos
          Issue Type: Bug
          Components: stout
            Reporter: Benjamin Bannier
            Assignee: Benjamin Bannier


Multiple functions e.g., in {{stout}} ignore the return value of {{::close}} 
with the following rationale,
{code:java}
// We ignore the return value of close(). This is because users
// calling this function are interested in the return value of
// write(). Also an unsuccessful close() doesn't affect the write.{code}
I believe this is incorrect in general. Especially when not calling {{::fsync}} 
after a write operation, the kernel might buffer writes and only trigger 
write-related failures when the file descriptor is 
closed.[here|[http://man7.org/linux/man-pages/man2/close.2.html#NOTES].]

We should audit our code to make sure that failures to {{::close}} file 
descriptors are properly propagated when needed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to