Andrew Gaul
efff9c01a6
Avoid misplaced const via removing unneeded typedef
...
Found via clang-tidy.
2019-07-12 03:41:19 -07:00
Andrew Gaul
a83d5baa90
Remove recursive locking
...
Recursive locking is frowned upon and is incompatible with
PTHREAD_MUTEX_ERRORCHECK. Also clean up pthread_mutex_lock error
checking.
2019-07-10 12:39:00 -07:00
Takeshi Nakatani
50d13255e4
Merge pull request #1081 from gaul/write-blocks-readdir
...
Break FdEntity locks into data and metadata
2019-07-11 03:40:26 +09:00
Takeshi Nakatani
5195fa93fa
Merge pull request #1071 from gaul/macos/xattr
...
Run xattr tests on macOS
2019-07-07 17:37:00 +09:00
Takeshi Nakatani
e5e63d6ac3
Merge pull request #1067 from gaul/mismatched-free
...
Fix mismatched new[]/free
2019-07-07 16:55:07 +09:00
Takeshi Nakatani
7a65a414c3
Merge pull request #1080 from gaul/xml/simplification
...
Add simple XML parsing wrapper
2019-07-07 16:44:18 +09:00
Andrew Gaul
4a192ffdf9
Run xattr tests on macOS
2019-07-07 00:39:45 -07:00
Andrew Gaul
944d21cabb
Fix mismatched new[]/free
...
Found via Valgrind.
2019-07-07 00:36:48 -07:00
Takeshi Nakatani
d267212289
Merge pull request #1079 from gaul/cppcheck/shadowing
...
Avoid shadowing variable in FdEntity::Open
2019-07-07 16:29:42 +09:00
Takeshi Nakatani
58d8e5586a
Merge pull request #1078 from gaul/multipart/2x
...
Issue multipart when object size exceeds part size
2019-07-07 16:21:22 +09:00
Takeshi Nakatani
ce803daf4a
Merge pull request #1077 from gaul/openssl/locking
...
Annotate OpenSSL locking functions as unused
2019-07-07 16:10:14 +09:00
Takeshi Nakatani
9bf34e2fda
Merge pull request #1076 from gaul/doc/man-help
...
Add documentation for use_session_token and use_rrs
2019-07-07 15:45:42 +09:00
Takeshi Nakatani
52218d2ddb
Merge pull request #1075 from gaul/fortify-source
...
Compile with FORTIFY_SOURCE
2019-07-07 15:38:08 +09:00
Takeshi Nakatani
6bd1a7eac0
Merge pull request #1074 from gaul/clang-tidy
...
Configure clang-tidy target
2019-07-07 15:28:08 +09:00
Takeshi Nakatani
6177d7b096
Merge pull request #1073 from gaul/deps/s3proxy
...
Upgrade to S3Proxy 1.6.2
2019-07-07 15:19:00 +09:00
Takeshi Nakatani
3161bf4608
Merge pull request #1070 from gaul/bash/nounset
...
Prohibit pipeline failures
2019-07-07 15:10:53 +09:00
Takeshi Nakatani
2349dafb98
Merge pull request #1069 from gaul/macos/sed
...
Use system sed on macOS
2019-07-07 15:00:48 +09:00
Takeshi Nakatani
1cd58d7828
Merge pull request #1035 from gaul/test/flags
...
Individually test multiple s3fs flags
2019-07-07 14:41:15 +09:00
Andrew Gaul
8aa06d621a
Add documentation for use_session_token and use_rrs
...
Fixes #929 .
2019-07-06 10:04:43 -07:00
Andrew Gaul
ecf13a8cb9
Break FdEntity locks into data and metadata
...
Previously long-running data operations like RowFlush would block
metadata operations like GetStats and thus user readdir. Fixes #928 .
2019-07-05 23:12:24 -07:00
Andrew Gaul
b8ff6a647e
Add simple XML parsing wrapper
...
Also simplify check_region_error.
2019-07-05 17:39:09 -07:00
Andrew Gaul
49110c671d
Avoid shadowing variable in FdEntity::Open
...
Found via cppcheck 1.88.
2019-07-05 15:06:18 -07:00
Andrew Gaul
febaf6849f
Issue multipart when object size exceeds part size
...
Previously s3fs issued multipart uploads when the object size was
twice the part size. Conjoining this with the part size was confusing
and s3fs should add a separate tunable for this if needed, similar to
singlepart_copy_limit. Fixes #1058 .
2019-07-05 12:14:56 -07:00
Andrew Gaul
4893174652
Annotate OpenSSL locking functions as unused
...
OpenSSL 1.1.0 removed these and generates warnings with newer
versions.
2019-07-05 10:45:57 -07:00
Andrew Gaul
5820c72092
Compile with FORTIFY_SOURCE
...
This can catch some classes of buffer overflows.
2019-07-04 10:20:26 -07:00
Andrew Gaul
4f23f38583
Individually test multiple s3fs flags
...
Remove unneeded comments; single part limits ensure that the tests
exercise multipart code paths even with smaller files.
References #971 .
2019-07-03 21:09:40 -07:00
Andrew Gaul
bbfa91141a
Configure clang-tidy target
...
Also fix nits.
2019-07-03 14:04:11 -07:00
Andrew Gaul
f439c6382f
Upgrade to S3Proxy 1.6.2
...
Notably this includes support for List Objects v2 which AWS CLI uses.
Release notes:
https://github.com/gaul/s3proxy/releases/tag/s3proxy-1.6.2
2019-07-03 10:37:26 -07:00
Takeshi Nakatani
21321a9d96
Merge pull request #1065 from gaul/doc/ssl-verify-hostname
...
Document ssl_verify_hostname
2019-07-03 22:15:33 +09:00
Takeshi Nakatani
f03b50fd13
Merge pull request #1063 from gaul/truncate-2nd-open-fd
...
Flush file when opening second fd
2019-07-03 21:14:03 +09:00
Takeshi Nakatani
15a870f9d9
Merge pull request #1061 from gaul/fdpagelist/value
...
Make fdpage a value type in fdpage_list_t
2019-07-03 21:04:16 +09:00
Andrew Gaul
9472ee4a01
Prohibit pipeline failures
2019-07-03 02:57:40 -07:00
Andrew Gaul
1f1f824da7
Use system sed on macOS
...
This requires fewer developer customizations to work on macOS.
Requires some GNU workarounds.
2019-07-02 22:17:02 -07:00
Andrew Gaul
f02105c346
Document ssl_verify_hostname
...
References #1064 .
2019-07-02 10:26:29 -07:00
Andrew Gaul
c596441f58
Flush file when opening second fd
...
Previously when s3fs had dirty local data and an application opened a
second fd it would remove the stat cache entry, query S3 for the size
which was still zero, then reinitialize FdEntry with this incorrect
size. Instead flush local data to S3 so this query works. It is
possible that a more involved patch could do this with a less
heavyweight approach but this requires changing open. This does not
completely fix git clone but allows it to proceed further. Also make
some cache methods const-correct. References #839 .
2019-07-02 01:12:09 -07:00
Andrew Gaul
455e29cbea
Make fdpage a value type in fdpage_list_t
...
This simplifies memory management.
2019-07-01 09:30:48 -07:00
Takeshi Nakatani
511d223468
Merge pull request #1059 from gaul/casting
...
Fix casting warning on 32-bit
2019-07-01 22:26:14 +09:00
Takeshi Nakatani
5324c1b588
Merge pull request #1055 from gaul/test/litter
...
Remove litter from test_concurrency
2019-07-01 22:10:57 +09:00
Takeshi Nakatani
554ea49294
Merge pull request #1051 from gaul/log/flags
...
Log flags as hexadecimal
2019-07-01 21:36:17 +09:00
Andrew Gaul
d7f77a6282
Fix casting warning on 32-bit
2019-06-29 20:57:42 -07:00
Andrew Gaul
048aea1151
Remove litter from test_concurrency
2019-06-26 20:29:27 -07:00
Andrew Gaul
f1ad626b46
Log flags as hexadecimal
2019-06-24 16:13:07 -07:00
Takeshi Nakatani
a78d8d1da4
Merge pull request #1049 from gaul/external-modication
...
Remove cache file when object time differs
2019-06-24 00:51:54 +09:00
Takeshi Nakatani
fbebc6fa57
Merge pull request #1048 from gaul/log/curl
...
Emit older curl warnings only once
2019-06-24 00:42:44 +09:00
Takeshi Nakatani
c18fc901c4
Merge pull request #1045 from gaul/test/umount-s3fs
...
Correct macOS integration test umount
2019-06-23 23:02:46 +09:00
Takeshi Nakatani
245f14c8c1
Merge pull request #1041 from gaul/doc/typo
...
Fix singlepart_copy_limit default
2019-06-23 22:57:43 +09:00
Takeshi Nakatani
d732eef776
Merge pull request #1039 from gaul/off_t
...
Convert file offsets from size_t to off_t
2019-06-23 22:51:04 +09:00
Takeshi Nakatani
56b184fd0c
Merge pull request #1032 from gaul/man/env
...
Add environment variables to man page
2019-06-23 22:42:39 +09:00
Andrew Gaul
9e5eaad79b
Remove cache file when object time differs
...
Check the modification times to determine whether an object has
updated. This relies on low clock skew between s3fs and the S3
server; a more robust approach could use the ETag. Fixes #1047 .
2019-06-22 19:09:00 -07:00
Andrew Gaul
738eaadcbf
Emit older curl warnings only once
...
This makes Travis logs actually readable.
2019-06-22 10:01:20 -07:00