Chris Lu
cf252fc0cd
mount: report error when Flush()
...
The error in Release() is not working.
See https://github.com/jaderhs/libfuse/blob/master/FAQ
related to https://github.com/chrislusf/seaweedfs/issues/1765
2021-01-28 04:46:37 -08:00
Chris Lu
17f7c1c43f
Merge branch 'mount_from_outside_cluster'
2021-01-24 19:03:02 -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
9bcb28a3ea
avoid possible nil reader
...
fix https://github.com/chrislusf/seaweedfs/issues/1754
2021-01-24 17:19:35 -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
7119e7b491
mount: ensure reading from dirty pages
2021-01-18 01:14:42 -08:00
Chris Lu
4211601eab
set file handle reader to nil
2020-12-08 22:48:18 -08:00
Chris Lu
8e78187a97
add back last read chunk cache to reader and properly close the reader
2020-12-08 22:26:46 -08:00
Chris Lu
f4abd01adf
filer: cache small file to filer store
2020-11-30 04:34:04 -08:00
Chris Lu
06ee199ef3
ensure entryViewCache is in sync with the chunks
2020-11-03 12:22:19 -08:00
Chris Lu
7d5db73d98
go fmt
2020-11-02 14:21:07 -08:00
Chris Lu
a9662d44ac
avoid closing chunkSaveErrChan too early
2020-11-02 14:20:38 -08:00
Chris Lu
e219c57849
passing full path when assign volume locations
2020-10-25 15:46:29 -07:00
Chris Lu
da36abf033
go fmt
2020-10-24 20:12:04 -07:00
Chris Lu
71624858af
avoid reusing cached []byte
...
this logic is just to ensure 100% correct.
fuse message, data+message hearder > 512 will not be cached.
2020-10-23 11:31:57 -07:00
Chris Lu
3bf0116de1
mount: less channel waiting
2020-10-21 02:16:21 -07:00
Chris Lu
ad652ffb97
avoid close closed channel
2020-10-20 22:54:34 -07:00
Chris Lu
20442dc1bc
avoid extra data copying
2020-10-20 22:54:21 -07:00
Chris Lu
c0ab458671
report nil instead of EOF for empty files
...
related to https://github.com/chrislusf/seaweedfs/issues/1541
2020-10-17 11:03:46 -07:00
Chris Lu
09bab17aff
mount: avoid "send on closed channel"
2020-10-16 12:54:23 -07:00
Chris Lu
d598c47136
log errors
2020-10-15 11:01:43 -07:00
Chris Lu
5039aff310
release the goroutine to read errors
2020-10-15 10:59:18 -07:00
Chris Lu
e714c28a02
mount: async write file chunk
2020-10-14 23:28:03 -07:00
Chris Lu
cff8bb6554
return proper error
2020-10-10 15:43:22 -07:00
Chris Lu
7e1aad0b54
mount: map uid/gid between local and filer
2020-09-03 00:07:22 -07:00
Chris Lu
eb7929a971
rename filer2 to filer
2020-09-01 00:21:19 -07:00
Chris Lu
33d8c6c617
change log to warning
2020-08-30 21:01:44 -07:00
Chris Lu
e62d7f221f
a bit more logs
2020-08-30 21:00:24 -07:00
Chris Lu
22fe4ae573
mount: fix for UrBackup
2020-08-30 21:00:09 -07:00
Chris Lu
063c9ddac5
adjust logs
2020-08-29 11:56:22 -07:00
Chris Lu
ca658a97c5
add signatures to messages to avoid double processing
2020-08-28 23:48:48 -07:00
Chris Lu
51346a5930
always keep the manifest list of chunks
2020-08-23 17:15:12 -07:00
Chris Lu
c1d1677a28
keep manifest chunks forever
2020-08-23 16:59:01 -07:00
Chris Lu
aee27ccbe1
multiple fixes
...
* adjust isOpen count
* move ContinuousDirtyPages lock to filehandle
* fix problem with MergeIntoVisibles, avoid reusing slices
* let filer delete the garbage
2020-08-23 15:48:02 -07:00
Chris Lu
f48567c5c6
remove unused function
2020-08-19 22:53:49 -07:00
Chris Lu
839634097f
also do flush on release
2020-08-19 01:27:10 -07:00
Chris Lu
618b2f6829
release resources only when needed to
2020-08-18 12:53:08 -07:00
Chris Lu
208849702d
logs
2020-08-18 12:52:54 -07:00
Chris Lu
1fcd083db3
printout data size
2020-08-18 09:09:29 -07:00
Chris Lu
abdaf9958d
possibly read more
2020-08-17 16:04:56 -07:00
Chris Lu
9d46c7bc78
rename
2020-08-17 11:12:10 -07:00
Chris Lu
f5837b7000
report error first
2020-08-16 23:49:10 -07:00
Chris Lu
2ac27616bc
fix possible out of range bytes
...
avoid buff out of range resp.Data = buff[:totalRead]
2020-08-16 23:47:34 -07:00
Chris Lu
22e5132b3a
adjust log level
2020-08-16 16:25:11 -07:00
Chris Lu
ee0f92a6be
reduce memory allocation
2020-08-16 16:24:40 -07:00
Chris Lu
4a77f0820a
clean up logs
2020-08-16 01:37:50 -07:00
Chris Lu
aec7f32b02
fix reader_at
2020-08-16 00:49:08 -07:00
Chris Lu
003d48da21
adjust logs
2020-08-15 19:55:28 -07:00
Chris Lu
c647deace1
file size support set file length
...
use Attr.FileSize and TotalChunkSize to determine file size
2020-08-15 09:32:47 -07:00
Chris Lu
edfa73782f
adjust log level
2020-08-14 00:22:21 -07:00
Chris Lu
20e2ac1add
filer: store md5 metadata for files uploaded by filer
...
fix https://github.com/chrislusf/seaweedfs/issues/1412
2020-08-06 10:04:17 -07:00
Chris Lu
d40de39e75
FUSE: do not change crtime, uid, gid on save
2020-07-24 10:13:45 -07:00
Chris Lu
8dfeba8023
FUSE: skip changing to empty uid and gid during flush
...
Skip uid and gid changes if request uid and gid are zero
mongodb lock file, and many interim files, has empty uid and gid
I0724 10:05:51 93643 filehandle.go:173] /db/diagnostic.data/metrics.interim fh 1333342842031408359 flush Flush [ID=0x3 Node=0x50 Uid=0 Gid=0 Pid=178] 0x10 fl=0x0 lk=0x0
2020-07-24 10:06:43 -07:00
Chris Lu
97d97f3528
go code can read and write chunk manifest
2020-07-19 17:59:43 -07:00
Chris Lu
9033a7d369
removed async option
2020-06-28 10:18:32 -07:00
Chris Lu
1bb8cae65d
reverting and working
2020-06-28 10:14:17 -07:00
Chris Lu
e8e0d629af
ensure correct file mode
2020-06-24 23:26:54 -07:00
Chris Lu
628b27ef3b
purge old cache implementation
2020-06-11 01:50:00 -07:00
Chris Lu
4598473251
fix possible EOF problem
2020-06-09 18:04:40 -07:00
Chris Lu
5d0e1d8d74
also writes to local meta cache
...
before waiting for subscribed meta events
2020-04-22 15:40:47 -07:00
Chris Lu
9cacaf5eca
better detect file mime type
2020-04-14 11:32:31 -07:00
Chris Lu
13ab1fdaf0
mount: use file default permission 0666
2020-04-10 02:23:23 -07:00
Chris Lu
56ec8c4513
fix to avoid nil file an dirty pages
2020-04-09 21:43:05 -07:00
Chris Lu
006f78b70b
make a copy of request data
...
to avoid concurrency issues
2020-04-08 22:31:19 -07:00
Chris Lu
6630541399
ensure correct file size when opening existing files
2020-04-08 12:50:59 -07:00
Chris Lu
9dc0b1df8f
refactoring to compile for windows OS
...
windows os does not like to work with fuse
2020-03-29 21:07:55 -07:00
Chris Lu
826bc0b7e3
FUSE: add chunk cache for recently accessed file chunks
2020-03-28 13:43:31 -07:00
Chris Lu
d1439c5bd3
fix FUSE read for large files
...
FUSE expects ReadAt do not return partial filled buffer with a nil error.
2020-03-27 04:50:51 -07:00
Chris Lu
7f0d87b206
tree structured fs cache
...
FsCache for FsNode, wrapping fs.Node
2020-03-26 00:08:14 -07:00
Chris Lu
ae2ee379c0
consistent 64bit size
2020-03-22 01:37:46 -07:00
Chris Lu
65d2ea9fb0
FUSE mount: stream read data with buffer
...
fix https://github.com/chrislusf/seaweedfs/issues/1244
2020-03-22 01:00:36 -07:00
Chris Lu
97ab8a1976
remove ctx if possible
2020-02-25 22:23:59 -08:00
Chris Lu
892e726eb9
avoid reusing context object
...
fix https://github.com/chrislusf/seaweedfs/issues/1182
2020-02-25 21:50:12 -08:00
Chris Lu
6ab7368ef2
filer: dynamically create bucket under /buckets folder
2020-02-24 22:28:45 -08:00
Chris Lu
2f6bb57979
logging
2020-01-27 00:54:21 -08:00
Chris Lu
72a64a5cf8
use the same context object in order to retry
2020-01-26 14:42:11 -08:00
Chris Lu
c48fc8b4de
grpc send error via response instead of grpc error
2020-01-25 09:17:19 -08:00
Chris Lu
4433c7bdca
logs
2020-01-25 07:34:09 -08:00
Chris Lu
24f62ebe76
minor changes
2020-01-24 10:02:53 -08:00
Chris Lu
9d93c83654
mount: return IO error for mkdir
2020-01-24 01:41:31 -08:00
Chris Lu
c936a12afa
mount: update the file size so file Attr() can read
...
if file Attr() during file writes, the OS, at least for Mac, may try to resend the data to write, which usually are empty.
2020-01-23 21:59:58 -08:00
Chris Lu
c2e589f202
mount: better combines connected intervals to write to volume servers
2020-01-22 23:00:04 -08:00
Chris Lu
6b48d246a5
mount: read data that is just written
...
able read on data not flushed
multiple file open shares the same file handle
fix https://github.com/chrislusf/seaweedfs/issues/1182 on linux
2020-01-22 13:42:03 -08:00
bs106
ce79a31448
Fix missing leading dot in extension
2019-12-17 09:47:12 +00:00
Chris Lu
33da30d2b1
tweak
2019-12-14 11:04:20 -08:00
Chris Lu
5956dfd08d
mount: add umask option
...
related to https://github.com/chrislusf/seaweedfs/issues/978
2019-07-24 00:03:05 -07:00
Chris Lu
a14bd31f5b
go fmt
2019-06-22 20:05:25 -07:00
Chris Lu
ff97acae62
more logs
2019-06-21 12:14:40 -07:00
Chris Lu
11be0b5e91
more logging
2019-06-20 23:45:30 -07:00
Chris Lu
4b0f084b5d
delete chunks only when file writing is successful
2019-06-20 21:58:35 -07:00
Chris Lu
eebc44cce3
refactoring
2019-06-20 21:57:17 -07:00
Chris Lu
b30c14b631
webdav: can read now
2019-05-03 00:24:35 -07:00
Chris Lu
c7e7b6229f
detect mime type
2019-03-27 14:25:18 -07:00
Chris Lu
55bab1b456
add context.Context
2019-03-15 17:20:24 -07:00
Chris Lu
77b9af531d
adding grpc mutual tls
2019-02-18 12:11:52 -08:00
Chris Lu
bd32108a90
disable async file deletion
2019-01-05 22:51:50 -08:00
Chris Lu
d9f9aca453
refactoring
2019-01-05 15:16:39 -08:00
Chris Lu
525db94d9a
async file chunk deletion
2019-01-01 02:33:57 -08:00