Commit Graph

2102 Commits

Author SHA1 Message Date
Andrew Gaul
5c57e17b77
Enable noobj_cache by default (#1922)
This should improve performance in many situations.  s3fs already
enables the stat cache by default so memorizing noobj makes this more
consistent.  Fixes #1901.
2022-03-12 16:57:31 +09:00
Andrew Gaul
deaa85c40e
Document glacier_ir storage class (#1921)
Announcement:
https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-s3-glacier-instant-retrieval-storage-class/

This does not require code changes due to
bbcccd6e98.
2022-03-12 16:20:38 +09:00
Andrew Gaul
49d92c7022
Update ChangeLog and configure.ac for 1.91 (#1920)
Fixes #1876.
2022-03-08 07:48:15 +09:00
Takeshi Nakatani
d842d45b2b Fixed a bug about truncation for shrinking file 2022-03-02 22:41:10 +09:00
Takeshi Nakatani
684ced5a41 Changed handling the credential in S3fsCred more robust 2022-03-02 22:39:15 +09:00
Carsten Grohmann
afb0897553 Typos 2022-02-24 19:15:00 +09:00
Andrew Gaul
8a5c4306f5
Preserve sub-second precision where possible (#1915) 2022-02-23 23:58:51 +09:00
Andrew Gaul
01e24967b6
Add test for external object creation (#1900)
This test demonstrates the behavior before and after the stat cache
timeout when using noobj_cache.
2022-02-23 23:34:58 +09:00
Andrew Gaul
08adffd2fe
Fix typos (#1916) 2022-02-23 23:31:52 +09:00
Andrew Gaul
0842c5718f
Use more new file names for every test (#1902)
This makes the tests more robust.  Also fix filename to end in .txt.
2022-02-23 22:59:21 +09:00
Takeshi Nakatani
5452e9cb10 Dynamically generate dates for man page file 2022-02-23 21:51:47 +09:00
Andrew Gaul
232ff28cc7
Re-re-fix propagating the return code (#1903)
Previously the integration tests were exiting after the first failed
test instead of running all of them an reporting their statuses.
Follows on to dbf93c0152.
2022-02-23 14:27:29 +09:00
Andrew Gaul
81ed2bd91e
Propagate deferred exit status from main (#1912)
Previously s3fs always returned zero when the bucket did not mount.
Fixes #1911.
2022-02-23 10:09:12 +09:00
Andrew Gaul
305d660e39
Use custom CA bundle instead of ignoring errors (#1910)
Fixes #1846.
2022-02-23 10:04:05 +09:00
Carsten Grohmann
a716c72d37 Update notsup_compat_dir in --help 2022-02-21 19:29:15 +09:00
Andrew Gaul
302150b4f5
Filter mountpoints via mount -t (#1905)
This is portable between Linux and macOS.
2022-02-20 20:49:35 +09:00
Andrew Gaul
3fa03d4e1e
Pass explicit -p option to ps (#1904)
This ensures that a pid follows.
2022-02-20 20:40:29 +09:00
Takeshi Nakatani
e014d6e646 Changed Rocky Linux 8 instead of CentOS 8 2022-02-20 19:29:34 +09:00
Carsten Grohmann
c2a49b7b1a Rephrase the description of notsup_compat_dir 2022-02-20 16:06:57 +09:00
Carsten Grohmann
265fa9e47a Add performance considerations section to man page 2022-02-20 16:06:57 +09:00
Takeshi Nakatani
d31cbda7b6 Fixed a bug about checking credential 2022-02-19 23:22:15 +09:00
Takeshi Nakatani
b64dc7749c Moved parameter analysis processing to S3fsCred class 2022-02-19 17:23:40 +09:00
Takeshi Nakatani
b9e2be5c21 Fixed two typos in configure.ac 2022-02-19 17:22:43 +09:00
Takeshi Nakatani
839a33de49
Fixed not to call Flush even if the file size is increased (#1887)
Changed s3fs_truncate function.
This change reduces the number of file uploads if the file size is changed.

On macOS, I have found that the truncate call when "size=0" cannot reflect the file size.(This reason is not understood...)
To avoid this, only when "size=0", the flush method is called as before.

Other than that, I found a bug in FdEntity::Open() and fixed it.

Fixes #1875.
2022-02-15 21:29:07 +09:00
Petr Vaněk
4dfe2bfdd7 Include climits to support musl libc
PATH_MAX constant is not visible from any of currently included header
files in system with musl libc, where compilation fails with an error
below. The constant is defined in limits.h which is directly include via
climits header file.

fdcache.cpp: In static member function 'static FILE* FdManager::MakeTempFile()':
fdcache.cpp:381:14: error: 'PATH_MAX' was not declared in this scope
  381 |     char cfn[PATH_MAX];
      |              ^~~~~~~~

Fixes: d67b83e671 ("Allow configuration for temporary files directory")
2022-02-14 09:19:30 +09:00
Takeshi Nakatani
1678803566 Added S3fsCred class and moved Credential related processing in it 2022-02-13 21:38:30 +09:00
Takeshi Nakatani
d7e929e0a8
Fixed some Github Actions errors. (#1886)
- Fix knownConditionTrueFalse cppcheck(2.7) error on MacOS
- Fixed package installing failure of appstream download on centos8
2022-02-13 14:23:35 +09:00
Takeshi Nakatani
94e8e23eef
Fixed test_external_directory_creation test when cache enabled (#1885) 2022-02-13 13:32:19 +09:00
Andrew Gaul
dbf93c0152
Propagate return code properly (#1884)
Previously this did not propagate test failures.  A bad rebase
introduced this logic in 495d51113c.
2022-02-06 22:45:20 +09:00
Andrew Gaul
9224f792f0
Use CLOCK_REALTIME for UTIME_NOW (#1881)
Previously s3fs_utimens used CLOCK_MONOTONIC_COARSE which was not
1970-based.  Found via pjdfstest.  References #1589.
2022-01-30 22:19:15 +09:00
Andrew Gaul
f6ed972926
Always flush open files with O_CREAT flag (#1879)
Previously s3fs only created files that had dirty data and not those
with zero-bytes.  Regression from
771bbfeac5.  References #1013.  Found
via pjdfstest.  References #1589.
2022-01-30 22:02:37 +09:00
Andrew Gaul
0c75a63184
Preserve sub-second precision with utimens (#1880)
Found via pjdfstest.  References #1589.
2022-01-30 21:45:51 +09:00
Takeshi Nakatani
30cf7a50bb Added stat check for subdir created with awscli 2022-01-30 18:31:36 +09:00
Takeshi Nakatani
e452ef3940 Fixed the fault tolerance when time stamp getting fails 2022-01-30 18:31:36 +09:00
Andrew Gaul
cd5a69b9eb
Handle UTIME_NOW and UTIME_OMIT special values (#1868)
FUSE 3 will require this behavior.  References #1159.
2022-01-29 11:35:37 +09:00
Andrew Gaul
74c11ef226
Check bucket before trying to create it (#1874)
This makes it easier to run tests against S3 other than S3Proxy.
2022-01-26 23:42:12 +09:00
Andrew Gaul
662882d2f0
Always call clock_gettime(2) (#1871)
e01ded9e27 introduced this compatibility
shim but macOS 10.12 (2016) added this:
https://stackoverflow.com/a/39801564 .  Also remove fallback to
time(3) which loses precision.
2022-01-25 08:36:27 +09:00
Andrew Gaul
de0c87c801
Convert S3FS_LOW_LOGPRN from a macro to a function (#1869)
This shrinks the binary size from 770 to 540 KB and reduces compile
times.
2022-01-23 23:10:09 +09:00
Naoki Ikeguchi
41aaa4184f Avoid double setting values in statfs 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
451602e58d Remove unnecessary conditional for automake 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
581f5c0356 Move strptime polyfill to string_util 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
e5f6f112db Fix typo 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
b3cef944b2 Fix test_page_list_SOURCES has no if MSYS clause 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
6edb6067f3 Remove strcasestr polyfill 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
b2c659c0a6 Disable compiling polyfills in not MSYS2 env 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
807ea52ba7 Remove duplicates in .gitignore 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
3ac9f571f5 Use std::get_time instead in strptime polyfill 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
d95a612548 Revert "Run autoupdate"
This reverts commit 0b1d801598164c45e7c9e89ebd30ddde8251befa.
2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
19303a546e Fix the statfs issue, using f_frsize instead 2022-01-23 21:49:51 +09:00
Naoki Ikeguchi
4d117fd0af Add instructions for Windows compilation 2022-01-23 21:49:51 +09:00