You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Antoine Pitrou (Jira)" <ji...@apache.org> on 2022/10/03 16:58:00 UTC

[jira] [Created] (ARROW-17917) [C++] Add opaque device id identification to InputStream

Antoine Pitrou created ARROW-17917:
--------------------------------------

             Summary: [C++] Add opaque device id identification to InputStream
                 Key: ARROW-17917
                 URL: https://issues.apache.org/jira/browse/ARROW-17917
             Project: Apache Arrow
          Issue Type: Wish
          Components: C++
            Reporter: Antoine Pitrou


For the purpose of collecting input/output statistics, it is important to know to which "device" these stats pertain, so as not to mix e.g. stats for a local NVMe drive, a NFS-attached drive, a S3 filesystem, or a in-memory buffer reader.

I suggest adding to InputStream this API:
{code:c++}
/// \brief An opaque unique id for the device underlying this stream.
///
/// Any implementation is free to fill those bytes as it sees fit,
/// but it should be able to uniquely identify each "device"
/// (for example, a specific local drive, or a specific remote network
/// filesystem).
///
/// A suggested format is "<kind>:<bytes>" where "<kind>"
/// is a short string representing the backend kind
/// (for example "local", "s3"...) and "<bytes>" is a
/// backend-dependent string of bytes (for example a
/// `dev_t` for a POSIX local file).
///
/// This is not required to be printable nor human-readable,
/// and may contain NUL characters.
virtual std::string device_id() const = 0;
{code}




--
This message was sent by Atlassian Jira
(v8.20.10#820010)