bfd27460cc
Update COMPILATION.md
...
fix typo
2025-03-18 22:00:26 -07:00
ee1ff8ba75
Update COMPILATION.md
...
add hint for windows compilation
2025-03-18 22:00:26 -07:00
885b1efac6
change the way to get existing fdentity to optimize concurrent IO performance ( #2623 )
...
* change the way to get existing fdentity
* fix compiling err for ver > 1.91
* use GetROPath instead of GetPath
* compare FdEntity::ro_path first in FdEntity::GetFdEntityHasLock()
---------
Co-authored-by: fangqianan.fqa <fangqianan.fqa@alibaba-inc.com >
2025-03-01 01:56:07 +09:00
e63fe7ec65
Added backup variable for fdcache entity path ( #2637 )
2025-02-15 12:19:58 +09:00
dc92b1b087
Remove unneeded uses of std::map::operator[] ( #2642 )
...
These unintentionally mutate the map. Script suggested by @danmar.
2025-02-09 11:21:44 +09:00
edf4141ad6
Updated to the new issue template workflow
2025-01-26 11:51:10 -08:00
dd4f1395ca
Run passing tests from pjdfstest ( #1882 )
...
This downloads a tarball by hash instead of using a submodule.
References #1589 .
2025-01-19 10:26:40 +09:00
84dcf34e2c
Fixed refactoring mistakes about loading IAM credentials
2025-01-19 03:24:30 +09:00
b679e1db98
Fixed memory leak found by valgrind
2025-01-19 03:22:11 +09:00
be183c0323
Pin AWS CLI to work around S3Proxy limitation ( #2633 )
...
Also specify architecture to allow future ARM64 CI to work.
2025-01-18 10:56:18 +09:00
3df1195ae5
Expand clang-tidy CI target to all static-checks ( #2625 )
...
Relocate cppcheck and Shellcheck into a single CI target instead of
running them as part of all distributions. While this modestly
reduces run-time by about 20 seconds, more importantly it avoids
workarounds for older checker versions and simplifies the code.
2025-01-03 15:04:58 +09:00
cd41bddd1e
Upgrade to S3Proxy 2.5.0 ( #2627 )
...
Release notes:
https://github.com/gaul/s3proxy/releases/tag/s3proxy-2.5.0
2025-01-03 15:01:15 +09:00
87874caf95
Remove double free in DestroyCurlShareHandle ( #2626 )
...
ShareHandles.erase implicitly calls this via the unique_ptr
destructor.
2025-01-03 14:59:06 +09:00
b83c2852b8
Upgrade CI to Alpine 3.21 ( #2620 )
2024-12-15 10:19:29 +09:00
5e39eff403
Remove explicit std::string constructors ( #2619 )
...
char * automatically convert via the implicit std::string constructor.
2024-12-15 10:18:44 +09:00
6c77cd8780
Fixed a bug in check_service_req_threadworker
2024-12-15 09:51:42 +09:00
669cba3240
Address some 32-bit warnings ( #2615 )
2024-12-01 10:32:28 +09:00
d4f3fb01fc
Make some methods const ( #2614 )
...
Found via cppcheck --inconclusive.
2024-12-01 10:31:03 +09:00
65e4aef2a1
Prefer C++-style casts over C-style casts ( #2599 )
...
The former are easier to identify. Found via clang-tidy.
Co-authored-by: Takeshi Nakatani <ggtakec@gmail.com >
2024-12-01 10:29:08 +09:00
d13396127c
Delete Semaphore copy and move methods ( #2613 )
...
This matches the macOS implementation.
2024-12-01 10:28:50 +09:00
990d2e0074
Add top-level clang-tidy make target
2024-11-30 03:59:40 +09:00
61abf80197
Organized multi-threading related options
2024-11-29 05:13:06 +09:00
956e8c5750
Added new class for curl share handle
...
Added new class for curl share handle.
And, paired the curl handle(S3fsCurl) with the worker thread.
Changed that each thread has its own SSL session cache to prevent data
races.
So OpenSSL suppression for ThreadSanitizer is no longer necessary, so
reverted it.
2024-11-28 03:40:40 +09:00
bfc3ea767a
Removed last use of S3fsMultiCurl and changed those thread handling
2024-11-26 10:47:03 +09:00
499577c2a9
Refactored for standardizing content and copy handling for Multipart Upload
2024-11-25 05:48:38 +09:00
143284b2f3
Upgrade to S3Proxy 2.4.1 ( #2433 )
...
This transitions to the transient-nio2 storage backend which should
address a race condition with getBlob and be easier to work with in
the future. Release notes:
https://github.com/gaul/s3proxy/releases/tag/s3proxy-2.4.1
https://github.com/gaul/s3proxy/releases/tag/s3proxy-2.4.0
https://github.com/gaul/s3proxy/releases/tag/s3proxy-2.3.0
https://github.com/gaul/s3proxy/releases/tag/s3proxy-2.2.0
https://github.com/gaul/s3proxy/releases/tag/s3proxy-2.1.0
2024-11-24 22:27:24 +09:00
7410b95db2
Refactored parallel get object request
2024-11-23 02:22:27 +09:00
86b5c9d88e
Refactored multipart put head request
2024-11-16 09:35:23 +09:00
a1e47bc287
Changed multiple Head requests from S3fsMultiCurl to ThreadPoolMan
2024-11-14 07:41:03 +09:00
efc23316e9
Refactored single type requests to use through ThreadPoolMan
2024-11-12 09:08:14 +09:00
a680d3e138
Removed CurlHandlerPool and simplified it
...
Removed CurlHandlerPool and simplified it.
And against data race in OpenSSL, temporarily changed to not use Sessin cache.
2024-11-12 07:33:04 +09:00
cc29bea81b
Call std::get_time instead of strptime ( #2598 )
...
This reduces the Windows-specific code.
2024-11-09 19:28:40 +09:00
af0d7ba45e
Ensure fdent_data_lock is acquired after fdent_lock ( #2595 )
2024-11-09 19:28:13 +09:00
17d0970244
Changed the macOS Github Actions runner image to macos-13
...
Changed the macos Github Actions runner image to macos-13, and
avoided extended attribute error when copying with macos-fuse-t.
2024-11-07 16:51:53 +09:00
45b32046cd
Consolidate lower and upper logic ( #2594 )
2024-11-06 00:07:12 +09:00
a101b88114
Compare case-insensitively instead of copying ( #2593 )
...
Also remove some code duplication.
2024-11-06 00:05:05 +09:00
d9ccdc4fce
Look up header values directly ( #2592 )
...
stat_cache_entry::meta uses a case-insensitive comparator so there is
no need to loop over each entry to compare each key with lowercase.
2024-11-05 07:16:19 +09:00
7a989a58a0
Remove expensive log message during s3fs_getxattr ( #2590 )
2024-11-05 00:00:58 +09:00
82f694e473
Avoid unneeded std::string copies ( #2589 )
2024-11-04 23:59:54 +09:00
9a155c81a7
Enable clang-analyzer ( #2588 )
...
Also fix a few smaller issues.
2024-11-04 23:58:43 +09:00
9b888fa9b3
Fixed readdir bug with objects receiving EPERM on HEAD request
2024-11-04 15:25:12 +09:00
ef6c213471
Bypassed test_extended_attributes test on MacOS
2024-11-03 08:56:48 +09:00
90ea57b99b
Add Fedora 41 and remove Fedora 39 from CI ( #2580 )
2024-11-02 23:55:43 +09:00
330cb39daf
Remove CentOS 7 from CI ( #2579 )
...
CentOS 7 is EOL and thus unsupported. This reverts commit
44d5b5e1c9 .
2024-10-29 18:23:36 +09:00
b87a8400e3
Use pass-by-value for peeloff ( #2578 )
...
This avoids copies when used with std::move.
2024-10-29 18:21:07 +09:00
3b226ed672
Make psemaphore similar to C++20 std::counting_semaphore ( #2569 )
2024-10-29 08:23:05 +09:00
07881195f2
Add missing mutex header ( #2576 )
...
Found via clang-tidy.
2024-10-29 00:11:28 +09:00
08a5d35f34
Add Ubuntu 24.10 to CI ( #2575 )
2024-10-29 00:10:44 +09:00
561ce1e206
Update ChangeLog and configure.ac for 1.95
...
Fixes #2496 .
v1.95
2024-10-25 10:42:53 -07:00
7cb46db945
Add missing string header ( #2574 )
...
Found via clang-tidy.
2024-10-25 16:13:57 +09:00