file_sink uses writev when possible