You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
POSIX allows for a stat to be executed before a close has been called. The stat will return the file size up to that point.
In the S3 plugin, the stat translates to a HEAD request. However, the S3 object does not yet exist if the stat is done before the close.
To handle the itouch scenario (see irods/irods#6880), we return the file size of 0 if stat follows a create prior to a close. However, this does not cover a scenario like the following: create, write, stat, close.
To make it more POSIX-like, keep track of the maximum byte written and return this if a stat is called before a close. If the stat is called after a close, do a HEAD as normal.
This was found while testing istream which, unlike iput, does a stat before the final close.
The text was updated successfully, but these errors were encountered:
This has been changed slightly to handle istream --append.
On the stat, if the close operation has not been executed, look for a local cache file. (There should always be one if --append is used.) If it exists, do a stat() of it to get the object size.
If the cache file does not exist, then return maximum byte written.
POSIX allows for a stat to be executed before a close has been called. The stat will return the file size up to that point.
In the S3 plugin, the stat translates to a HEAD request. However, the S3 object does not yet exist if the stat is done before the close.
To handle the itouch scenario (see irods/irods#6880), we return the file size of 0 if stat follows a create prior to a close. However, this does not cover a scenario like the following: create, write, stat, close.
To make it more POSIX-like, keep track of the maximum byte written and return this if a stat is called before a close. If the stat is called after a close, do a HEAD as normal.
This was found while testing istream which, unlike iput, does a stat before the final close.
The text was updated successfully, but these errors were encountered: