chrislu
2dcb8cb93b
POSIX: ensure file and directory inodes are different
...
this is just an in memory representation.
POSIX wants different inode numbers for the same named file or directory.
2022-01-11 23:44:48 -08:00
chrislu
cbc055dc2b
mount: file fsync
...
fix https://github.com/chrislusf/seaweedfs/issues/2561
2022-01-10 00:52:16 -08:00
chrislu
f7a6f6b4c0
if this is enabled, there are some "bus error" with git clone
2021-12-28 13:44:52 -08:00
chrislu
0da2dfd640
fuse: change to direct io mode
...
before and after:
chrislu$ time dd if=/dev/random of=/Users/chrislu/tmp/mm/testfile bs=131072 count=8192
8192+0 records in
8192+0 records out
1073741824 bytes transferred in 4.534068 secs (236816430 bytes/sec)
dd if=/dev/random of=/Users/chrislu/tmp/mm/testfile bs=131072 count=8192 0.01s user 3.86s system 84% cpu 4.561 total
chrislu$ time dd if=/dev/random of=/Users/chrislu/tmp/mm/testfile bs=131072 count=8192
8192+0 records in
8192+0 records out
1073741824 bytes transferred in 3.824072 secs (280784948 bytes/sec)
dd if=/dev/random of=/Users/chrislu/tmp/mm/testfile bs=131072 count=8192 0.01s user 3.22s system 83% cpu 3.857 total
2021-12-28 12:22:56 -08:00
chrislu
9f9ef1340c
use streaming mode for long poll grpc calls
...
streaming mode would create separate grpc connections for each call.
this is to ensure the long poll connections are properly closed.
2021-12-26 00:15:03 -08:00
chrislu
4fd29dad86
remove writeOnly flag
2021-12-20 01:11:43 -08:00
Chris Lu
24858507cc
rename API to avoid confusion
2021-10-30 19:27:25 -07:00
Chris Lu
69655ba8e5
mount: cache on reading remote storage
2021-08-09 22:11:57 -07:00
Chris Lu
b624090398
go fmt
2021-07-01 01:21:14 -07:00
Chris Lu
07f20155fd
small optimization
2021-07-01 01:19:31 -07:00
Chris Lu
cc34475012
remove file handle locking for setattr
2021-06-02 11:44:12 -07:00
Chris Lu
3db1642392
mount: skip persisting metadata if file is open
2021-06-02 03:40:08 -07:00
Chris Lu
3ff307e842
reduce logs
2021-05-13 00:32:37 -07:00
Chris Lu
280e7cf289
mount: in case the set attribute is called before persisting the file
2021-05-09 22:55:30 -07:00
Chris Lu
5753749c90
remove verbose logs
2021-05-06 03:34:34 -07:00
Chris Lu
38f411219a
mount: skip local chunk cache if opened write only
2021-05-06 03:31:40 -07:00
Chris Lu
11c405fc85
ensure file handles are released
2021-04-20 19:56:55 -07:00
Chris Lu
83cf94ad2d
delay new file creation unless file is opened exclusively
2021-04-19 10:58:25 -07:00
Chris Lu
6cbd786db9
correctly runs git clone
2021-04-18 13:07:28 -07:00
Chris Lu
d9a2a7f1c4
WIP
...
no memory issue
if some directory is removed, it may have this error
$ rm -Rf ~/tmp/m2/s1
rm: fts_read: Device not configured
2021-04-18 13:06:38 -07:00
Chris Lu
54410ca955
cleaner way to set readonly
2021-04-18 10:02:02 -07:00
Chris Lu
3074e9b428
ensure consistent inode value
2021-04-15 22:42:24 -07:00
Chris Lu
1adc8f86ea
lighten up File object
...
file.entry only exists when file.isOpen
2021-04-14 20:49:15 -07:00
Chris Lu
3f3268cd1b
go fmt
2021-04-14 00:30:16 -07:00
Chris Lu
ca0f07a188
move file reader, entryViewCache to file handle
...
reduce file object size
2021-04-14 00:29:58 -07:00
Chris Lu
0f64f5b9c8
mount: add readOnly option
...
fix https://github.com/chrislusf/seaweedfs/issues/1961
2021-04-04 21:40:58 -07:00
Chris Lu
288369cfc7
mount: release resources when Forget() is called
...
address https://github.com/chrislusf/seaweedfs/issues/1929
2021-03-22 16:22:19 -07:00
Chris Lu
df461402cc
ensure entry attribute is not nill
...
fix https://github.com/chrislusf/seaweedfs/issues/1926
2021-03-21 22:27:30 -07:00
Chris Lu
69694a17be
reverting 7d57664c2d
2021-03-16 02:59:26 -07:00
Chris Lu
c00dd5e62e
report error if entry not found
2021-03-16 02:55:49 -07:00
Chris Lu
7d57664c2d
mount: internals switch to filer.Entry instead of protobuf
2021-03-12 00:36:38 -08:00
Chris Lu
5ba4b479f8
properly lock file.entry object
...
fix https://github.com/chrislusf/seaweedfs/issues/1882
2021-03-09 23:08:38 -08:00
Chris Lu
bcf32591b7
reduce possibility of nil entry
2021-03-02 13:33:56 -08:00
Chris Lu
3a1d3d3413
mount: properly invalidate kernel node cache entry
...
fix https://github.com/chrislusf/seaweedfs/issues/1752
2021-01-26 02:50:53 -08:00
Chris Lu
00707ec00f
mount: outsideContainerClusterMode proxy through filer
...
Running mount outside of the cluster would not need to expose all the volume servers to outside of the cluster. The chunk read and write will go through the filer.
2021-01-24 19:01:58 -08:00
Chris Lu
6ca10725b8
Revert "mount: when outside cluster network, use filer as proxy to access volume servers"
...
This reverts commit 096e088d7b
.
2021-01-24 03:15:19 -08:00
Chris Lu
096e088d7b
mount: when outside cluster network, use filer as proxy to access volume servers
2021-01-24 01:41:38 -08:00
Chris Lu
20ef3bb8d4
mount: use direct_io to avoid OS page cache
...
fix https://github.com/chrislusf/seaweedfs/issues/1752
2021-01-22 22:39:46 -08:00
Chris Lu
0ea5c087ce
go fmt
2020-11-15 16:59:28 -08:00
Chris Lu
06ee199ef3
ensure entryViewCache is in sync with the chunks
2020-11-03 12:22:19 -08:00
Chris Lu
b132cb893f
in case some chunks modified earliar are added later
2020-11-03 12:22:19 -08:00
Chris Lu
19098f2c2d
make a copy of the filer.entry for most read operations
2020-10-30 01:23:26 -07:00
Chris Lu
6135cbaa02
clear file.entry
2020-10-30 01:23:26 -07:00
Chris Lu
0b68b68ec4
reload entry only when it is a hard link
...
fix https://github.com/chrislusf/seaweedfs/issues/1581
2020-10-29 16:32:45 -07:00
Chris Lu
e71463a9eb
mount: invalide file cache when metadata is changed
2020-10-25 19:24:15 -07:00
Chris Lu
91fd311f7a
fix logic to read entry or not
2020-10-25 10:33:51 -07:00
Chris Lu
10a4a628e9
refresh cached file entry from sync metadata updates
2020-10-25 09:42:50 -07:00
Chris Lu
1012df7bb5
switch hardlink id from int64 to bytes
2020-09-24 11:11:42 -07:00
Chris Lu
5e239afdfc
hardlink works now
2020-09-24 03:06:48 -07:00
Chris Lu
7e1aad0b54
mount: map uid/gid between local and filer
2020-09-03 00:07:22 -07:00