Commit Graph

1680 Commits

Author SHA1 Message Date
Chris Lu
aa73364a24 weed fix: add back .idx file generation 2020-01-06 16:29:59 -08:00
Chris Lu
4e731f1c8b volume: copy volumes also include .vif file 2020-01-04 11:28:29 -08:00
Chris Lu
df636e4c14 remove .vif files 2020-01-03 12:46:42 -08:00
Chris Lu
3eafec4b29 volume: add option to limit file size 2020-01-03 00:37:26 -08:00
Chris Lu
9c139e0601 update help message 2020-01-01 12:38:29 -08:00
Chris Lu
88a80ab557 fix help message 2020-01-01 12:37:38 -08:00
Chris Lu
aa1807e082 1.48 2020-01-01 09:27:02 -08:00
Chris Lu
86d4b18eb5 filer: optional recursive deletion
fix https://github.com/chrislusf/seaweedfs/issues/1176
2019-12-31 11:52:54 -08:00
Chris Lu
09043c8e5a fs: synchronized meta file writing
fix https://github.com/chrislusf/seaweedfs/issues/1175
2019-12-29 20:19:51 -08:00
Chris Lu
509f314350 keep .vif file for ec to normal volume conversion 2019-12-28 21:52:55 -08:00
Chris Lu
672868b460 always create .vif file 2019-12-28 21:52:06 -08:00
Chris Lu
03ab0b1b9a correct .vif file creation 2019-12-28 21:40:12 -08:00
Chris Lu
b6f7033478 go fmt 2019-12-28 21:37:29 -08:00
Chris Lu
9134092a8d endure creating .vif files 2019-12-28 21:36:15 -08:00
Chris Lu
0cc8347a3a go fmt 2019-12-28 21:13:10 -08:00
Chris Lu
8fbc0a9163 fix edge cases 2019-12-28 12:59:31 -08:00
Chris Lu
37b64a50b4 ec: generate and copy .vif file 2019-12-28 12:44:59 -08:00
Chris Lu
c06f7eb48a load volume info from .vif file, use superblock as a backup 2019-12-28 12:28:58 -08:00
Chris Lu
f4a74e03d1 refactoring: separating .vif from tier file loading 2019-12-28 11:35:27 -08:00
Chris Lu
2000284435 rename volume tier info to volume info 2019-12-28 11:21:49 -08:00
Chris Lu
e8b357fd53 rename from .tier to .vif 2019-12-28 11:17:39 -08:00
Chris Lu
b3c83f9404 fix spelling 2019-12-28 11:16:10 -08:00
Chris Lu
1fd8926ac7 ignore draining error 2019-12-25 21:39:33 -08:00
Chris Lu
48d28d3eb2 tier: support remote file attributes and remember the file extension 2019-12-25 21:37:24 -08:00
divinerapier
4cbb6fa199
feat: drains http body if buffer is too small
Signed-off-by: divinerapier <poriter.coco@gmail.com>
2019-12-26 11:28:43 +08:00
divinerapier
84640d07b7
fix: handle errors for ReadUrl
Signed-off-by: divinerapier <poriter.coco@gmail.com>
2019-12-26 10:07:07 +08:00
Chris Lu
1346437d71
Merge pull request #1171 from stlpmo-jn/redundant_type_conversion
remove the redundant type conversion
2019-12-25 17:02:05 -08:00
Chris Lu
35393b4a02 cleanly destroy remote files 2019-12-25 16:17:58 -08:00
Chris Lu
eecad6062a go fmt 2019-12-25 09:56:42 -08:00
Chris Lu
d960b3474a tier storage: support downloading the remote dat files 2019-12-25 09:53:13 -08:00
stlpmo
f3de4b6c18 remove the redundant type conversion 2019-12-25 10:13:45 +08:00
Chris Lu
3ebeae0c0b ec encode distribute ec data and parity shards evenly 2019-12-24 16:52:21 -08:00
Chris Lu
9ff72f616a go fmt 2019-12-24 14:56:16 -08:00
Chris Lu
efd2f50ede compaction changed to .idx based deletion 2019-12-24 14:55:50 -08:00
Chris Lu
7ba6be2312 volume ui add readonly status 2019-12-24 14:55:26 -08:00
Chris Lu
d8b39fe92a testing 2019-12-24 11:29:26 -08:00
Chris Lu
f42b5bd0f5 rename .sdb to .sdx 2019-12-24 10:19:12 -08:00
Chris Lu
abffe857a1 change btree map to in memory level db 2019-12-24 10:18:56 -08:00
Chris Lu
72a561ab7c refactoring 2019-12-24 08:13:01 -08:00
Chris Lu
9114f7f432
Merge pull request #1169 from stlpmo-jn/http_304_has_no_resp_body
remove the http 304 response body
2019-12-24 07:08:46 -08:00
Chris Lu
409a3fe41f
Merge pull request #1168 from stlpmo-jn/optimize_DeleteCollectionFromDiskLocation
decouple the volume.Destroy() from the operation of unmountVolume()
2019-12-24 07:08:04 -08:00
Chris Lu
37a836c8a7
Merge pull request #1167 from stlpmo-jn/volume_server_core_dump
resolve issue : create volume on no free space disk, the volume server core dump
2019-12-24 07:07:41 -08:00
stlpmo
f87ccbddb4 remove the http 304 response body 2019-12-24 17:56:50 +08:00
stlpmo
38e4b79125 decouple the volume.Destroy() from the operation of unmountVolume() 2019-12-24 17:20:34 +08:00
stlpmo
f300c35266 resolve issue : when the host disk full, the volume server will core dump 2019-12-24 16:36:15 +08:00
Chris Lu
1ad34a2487 ed.decode prefers servers with most data shards 2019-12-24 00:00:45 -08:00
Chris Lu
a18f62bbe7 only copy required shards 2019-12-23 18:06:13 -08:00
Chris Lu
c7d5a0b00c adjust help message 2019-12-23 17:58:47 -08:00
Chris Lu
8a2d529759 go fmt 2019-12-23 12:48:53 -08:00
Chris Lu
09ca936c78 shell: add ec.decode command 2019-12-23 12:48:20 -08:00
Chris Lu
dda5c6d3cb fmt 2019-12-22 04:31:36 -08:00
Chris Lu
a9b1ee18af default redis reads options
details in https://github.com/chrislusf/seaweedfs/pull/1165
2019-12-21 09:30:51 -08:00
Chris Lu
fcbd04c425 default to false in scaffold.go 2019-12-21 08:31:27 -08:00
Chris Lu
62b1a346ef set default 2019-12-20 20:57:38 -08:00
Chris Lu
cd47112c40
Merge pull request #1165 from dqsully/master
Add readOnly and routeByLatency options to Redis Cluster Store
2019-12-20 20:56:34 -08:00
Chris Lu
573b74f24f add SetDefault function for Configuration 2019-12-20 20:56:14 -08:00
Dakota Sullivan
f934a85d58
Add readOnly and routeByLatency options to scaffold.go 2019-12-20 19:27:15 -07:00
Dakota Sullivan
a0c9d9c0e7
Fix config property names 2019-12-20 19:23:01 -07:00
Chris Lu
71d55ec5cb adjust help message 2019-12-20 08:22:32 -08:00
Chris Lu
d0aa0c5086 shell: add fs.meta.cat to see file meta data content
related to https://github.com/chrislusf/seaweedfs/issues/1163
2019-12-20 08:22:18 -08:00
Chris Lu
ab966d7192 refactoring variable name 2019-12-19 00:44:46 -08:00
Chris Lu
f61de28c69 volume: add deletion capability for previously readonly volumes 2019-12-19 00:42:46 -08:00
Chris Lu
deb03ecfa3 remove duplicated checking
already checked in store.go
2019-12-18 23:59:53 -08:00
Chris Lu
36ddca9d1f filer: return not found 404 status if not found
fix https://github.com/chrislusf/seaweedfs/issues/1160
2019-12-18 21:04:40 -08:00
Chris Lu
ef3ae3cd41 clean up sorted index file 2019-12-18 20:59:15 -08:00
Dakota Sullivan
301bc2f69d
Add readOnly and routeByLatency options to Redis Cluster Store 2019-12-18 08:36:39 -07:00
Chris Lu
39810a9951 tiered volume is read only 2019-12-18 01:26:22 -08:00
Chris Lu
58f88e530c volume: use sorted index map for readonly volumes 2019-12-18 01:21:21 -08:00
Chris Lu
2f21beaccd loading xattr value 2019-12-17 21:45:32 -08:00
Chris Lu
014487b1a6 passing entry.Extended 2019-12-17 21:39:48 -08:00
Chris Lu
e707211dad passing entry.exended 2019-12-17 21:22:16 -08:00
Chris Lu
29eb333f8e fix comparing 2019-12-17 21:15:28 -08:00
Chris Lu
14242e6c70 passing xattr 2019-12-17 21:10:26 -08:00
Chris Lu
c42b023960 mount: invalidate xattr 2019-12-17 20:38:56 -08:00
Chris Lu
54369eccea 1.47 2019-12-17 15:11:01 -08:00
Chris Lu
6808bfec49 1.47 2019-12-17 15:08:45 -08:00
Chris Lu
9c781da34a mount: fix nil directory problem 2019-12-17 15:08:38 -08:00
Chris Lu
ee6952fddd twaking 2019-12-17 14:03:57 -08:00
Chris Lu
f27a1abf1c mount: fix dir nil 2019-12-17 13:50:32 -08:00
bs106
ce79a31448 Fix missing leading dot in extension 2019-12-17 09:47:12 +00:00
Chris Lu
5961e0d9eb fix logging 2019-12-15 22:24:06 -08:00
Chris Lu
33b4b1868b mount: support extended attributes 2019-12-15 21:07:01 -08:00
Chris Lu
ad9d5ff5d0 adjust UI 2019-12-15 20:57:17 -08:00
Chris Lu
392678f8f3 upload skipping mimetype if not needed 2019-12-15 20:57:08 -08:00
Chris Lu
e6ee421d61 fix compilation 2019-12-14 12:04:25 -08:00
Chris Lu
a631b2a9e9 1.46 2019-12-14 11:28:48 -08:00
Chris Lu
33da30d2b1 tweak 2019-12-14 11:04:20 -08:00
Chris Lu
de3eb7c380 update cache if updating the attributes 2019-12-13 11:14:09 -08:00
Chris Lu
357ea4b944 rm will clean the cache first 2019-12-13 11:08:26 -08:00
Chris Lu
deb249736e fix nill 2019-12-13 10:35:23 -08:00
Chris Lu
f59119cd1d mount: rename to dirListCacheLimit to configure cache for long format directory list 2019-12-13 10:22:24 -08:00
Chris Lu
3e0cd122d8 mount: directory listing cache ttl set to 5 minutes 2019-12-13 10:08:27 -08:00
Chris Lu
05c3b795dc filer: configurable directory list cache size 2019-12-13 10:05:43 -08:00
Chris Lu
bbb6ebc3c0 filer: DeleteFolderChildren for deleting large folders 2019-12-13 00:23:05 -08:00
Chris Lu
0fa1269bc7 filer: streaming file listing 2019-12-13 00:22:37 -08:00
Chris Lu
d0b423bbc0 filer: increase directory listing pagination size 2019-12-12 09:11:10 -08:00
Chris Lu
bf4b13612d adjust command name 2019-12-11 23:13:04 -08:00
Chris Lu
1f400489c6 filer: UI ensure a correct foler link 2019-12-11 23:09:01 -08:00
Chris Lu
4cba32d1d0 go fmt 2019-12-11 22:22:09 -08:00
Chris Lu
f51a6d8ba5 increase filer pagination limit 2019-12-11 22:21:37 -08:00
Chris Lu
c602073395 adjust logs 2019-12-11 21:40:33 -08:00
Chris Lu
1ddfbff2d3 deletion add option skipChunkDeletion 2019-12-11 14:58:22 -08:00
Chris Lu
f06b65a6fd filer: EXPERT add shouldDeleteChunks parameter for fast deletion 2019-12-11 07:50:53 -08:00
Yoni Nakache
9e45702334
Filer: Enable delete entries without flag volume
same as happens on the s3 API on delete bucket,
to reduce the IO requests on the system, you can just clear recursively folders without flagging them in volume server (they will be removed on delete bucket/drop collection)
this will remove the user ability to retrieve data under these folders
2019-12-11 11:30:19 +02:00
Chris Lu
40ff4eea14 fix nil problem 2019-12-10 23:13:14 -08:00
Chris Lu
356bd1b629 adjust text 2019-12-10 22:09:29 -08:00
Chris Lu
5847c5afff return meaningful error log 2019-12-10 22:09:29 -08:00
Chris Lu
3727d2488f
Merge pull request #1149 from song-zhang/improve-replications-consistency
improve data consistency when replication write
2019-12-09 20:13:03 -08:00
Chris Lu
10bd3c6b4b refactoring 2019-12-08 19:44:16 -08:00
Chris Lu
2b8e20f122 remove unused functions 2019-12-08 18:33:25 -08:00
zhangsong
5eb86aad47 improve data consistency when replication write 2019-12-08 22:21:35 +08:00
Chris Lu
e2a8cdfc48 webdav: fix writing file
fix https://github.com/chrislusf/seaweedfs/issues/1114
2019-12-07 07:56:51 -08:00
Chris Lu
0eda75fa2c add logging 2019-12-07 07:56:05 -08:00
Chris Lu
f81d43442b filer: speed up filer.meta.save by parallelizing 2019-12-06 22:20:59 -08:00
Chris Lu
f38f90b7ea cleanly remove .tier volume file 2019-12-06 22:19:47 -08:00
Chris Lu
6827cabfbb volume: dataFileAccessLock change to RW Lock 2019-12-06 06:59:57 -08:00
Chris Lu
81f424a630 go fmt 2019-12-06 06:57:32 -08:00
Chris Lu
916423e96a master: submit support "dataCenter" parameter 2019-12-05 15:51:24 -08:00
Chris Lu
e426bd541e grow volumes on volume servers with slots freed by cloud storage 2019-12-03 21:36:42 -08:00
Chris Lu
7ae8b1cc86 show volume info in volume.list in weed shell 2019-12-02 23:38:56 -08:00
Chris Lu
1becbce657 display remote volumes on volume server ui page 2019-12-02 23:23:54 -08:00
Chris Lu
70648d35ad go fmt 2019-12-02 20:49:58 -08:00
Chris Lu
6383b45bd0 add lock variable 2019-12-02 20:49:50 -08:00
Chris Lu
caae543a9f fix test 2019-12-02 15:54:24 -08:00
Chris Lu
126fb492d2 fix test 2019-12-02 15:52:33 -08:00
Chris Lu
ec8de250e2 tiered storage: can copy to s3, read from s3
master not aware tiered volume yet, file assigning is not working yet
2019-12-02 15:08:31 -08:00
Chris Lu
228231f3d7 minor 2019-12-02 15:08:31 -08:00
zhangsong
e83c36e26f fix the bug of volume never be vacuumed 2019-12-02 13:25:32 +08:00
Chris Lu
0da7b894cc pass backend config from master to volume servers 2019-11-29 01:05:09 -08:00
Chris Lu
a9dbd52e06
Merge pull request #1145 from stlpmo-jn/volume_graceful_stop
let volume server graceful stop
2019-11-29 00:11:57 -08:00
stlpmo
ea9d1ebd2f resolve the Duration.Milliseconds() is not exist in golang v11 & v12 2019-11-29 15:17:17 +08:00
Chris Lu
ea9a7e61d0 only send metrics address during on the first response 2019-11-28 20:48:08 -08:00
Chris Lu
61bc1d6ffd tweaking 2019-11-28 18:47:51 -08:00
Chris Lu
09c6d8fa32 fix test 2019-11-28 18:44:27 -08:00
Chris Lu
f60154f330 master load backend storage config from master.toml 2019-11-28 18:33:18 -08:00
Chris Lu
641b92f53c fix scaffold error 2019-11-28 18:04:25 -08:00
Chris Lu
ee2072dff9 volume: avoid inifinite loop reading ec volume info if error happens 2019-11-27 23:07:53 -08:00
Chris Lu
0b822a6fb5
Merge pull request #1142 from iliul/wip-fuse-mount
fuse: check mount point available before do runmount
2019-11-27 19:22:51 -08:00
Lei Liu
13b6f09fea fuse: adjust linux specific logic
Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-11-28 10:21:31 +08:00
Chris Lu
586798ecc0 go fmt 2019-11-27 12:34:57 -08:00
Chris Lu
46294b42e6 filer: support memsql
fix https://github.com/chrislusf/seaweedfs/issues/1141
2019-11-27 12:34:03 -08:00
Lei Liu
1ba3456ac2
go fmt
Signed-off-by: Lei Liu <liul.stone@gmail.com>
2019-11-27 23:08:51 +08:00
Lei Liu
4c87b222f1
fuse: check mount point available before do runmount
1. Use more readable mount point information
2. Fix some typos

eg:

$ df -Th
Filesystem              Type            Size  Used Avail Use% Mounted on
localhost:8888:/        fuse.seaweedfs  206G   512  206G   1% /mnt/weedfs

$ mount | grep weedfs
localhost:8888:/ on /mnt/weedfs type fuse.seaweedfs (rw,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other)

Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-11-27 22:56:44 +08:00
Chris Lu
0f9ba84274 s3 2019-11-27 03:09:45 -08:00
Chris Lu
67e5f5b558 typo 2019-11-27 03:09:45 -08:00
Lei Liu
2700ac6d1f filer: Add attr.mode in query string
Signed-off-by: Lei Liu <liul.stone@gmail.com>
2019-11-27 13:57:29 +08:00
Chris Lu
5f6b360eb7 adjust error message 2019-11-24 23:13:40 -08:00
Chris Lu
2cbe79acda fix typo in command help 2019-11-24 22:17:43 -08:00
Chris Lu
0fca1ae776 adjust build 2019-11-22 23:19:49 -08:00
Chris Lu
bc6cd93431 skip build for 32 bit computers 2019-11-22 22:52:21 -08:00
Chris Lu
249b9d8d5d 1.45 2019-11-22 14:51:16 -08:00
Chris Lu
e4c63ff2f8 go fmt 2019-11-22 14:51:09 -08:00
Chris Lu
fb3c9ed80d shell: fs.meta.save missed directory data with more than 1024 entries
fix https://github.com/chrislusf/seaweedfs/issues/1130
2019-11-22 01:39:50 -08:00
divinerapier
5656d43264
can not break out of for-select block
Signed-off-by: divinerapier <poriter.coco@gmail.com>
2019-11-20 08:25:29 +08:00
Chris Lu
9711a6ffaa WIP 2019-11-18 19:24:37 -08:00
Chris Lu
ba73c053c3 change uuid package
fix https://github.com/chrislusf/seaweedfs/issues/1126
2019-11-18 19:24:37 -08:00
chenwanli
295f3beed5 rm ldb and bdb directory 2019-11-19 09:35:06 +08:00
stlpmo
753138a3f7 test passed 2019-11-17 11:40:36 +08:00
Chris Lu
de0c983808 refactoring scaffolding for master.toml 2019-11-14 22:20:38 -08:00
Chris Lu
c6e8225a20 adjust memory mapped file size
related to https://github.com/chrislusf/seaweedfs/pull/1087
2019-11-12 21:05:48 -08:00
Chris Lu
66acc2c84f passing in averageShardsPerEcNode instead of expectedTotalEcShards
addressing https://github.com/chrislusf/seaweedfs/issues/1111
2019-11-12 15:36:18 -08:00
Chris Lu
40514c5362 add sortEcNodesByFreeslotsDecending and sortEcNodesByFreeslotsAscending
addressing https://github.com/chrislusf/seaweedfs/issues/1111
2019-11-12 13:47:36 -08:00
Chris Lu
717ec47fa2 avoid double counting ec slot
addressing issue found in https://github.com/chrislusf/seaweedfs/issues/1111

The ec slots are already counted on the server side.
2019-11-12 09:33:51 -08:00
Lei Liu
46755ea1e1 fix master maintenance logic
Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-11-12 14:46:10 +08:00
Chris Lu
ee90236a97 Merge branch 'master' into refactoring_dat_backend 2019-11-11 21:30:14 -08:00
Chris Lu
d7852ebb3b
Merge pull request #1102 from stlpmo-jn/add_ETCD_sequencer
Add etcd sequencer
2019-11-11 12:43:24 -08:00
stlpmo
d07701fa75 delete unused function 2019-11-11 18:08:48 +08:00
stlpmo
62d393d6c9 ut pass 2019-11-11 10:52:21 +08:00
stlpmo
802a0eb3fe move from cmd-line to scaffold 2019-11-11 09:15:17 +08:00
Chris Lu
9c2f3b1b0f fix rack_not_found case
fix rack_not_found in https://github.com/chrislusf/seaweedfs/issues/1111
2019-11-10 12:06:41 -08:00
Chris Lu
e6ab75972f use constant 2019-11-10 12:05:58 -08:00
Chris Lu
471902cd51 change parameter name 2019-11-10 12:05:45 -08:00
zhangsong
61fa485700 add volume number param in assign operation 2019-11-10 20:11:03 +08:00
Chris Lu
85f8649320 refactor memory mapped file into backend storage 2019-11-09 00:10:59 -08:00
Chris Lu
c5c1d83d91 Merge branch 'master' into refactoring_dat_backend 2019-11-08 22:54:41 -08:00
Chris Lu
c34ffed43f go fmt 2019-11-08 22:47:50 -08:00
Chris Lu
84c503c6a7 adjust ec reading log level 2019-11-08 22:41:02 -08:00
Chris Lu
6cc9e0d788 volume: fix ec shard reading
fix https://github.com/chrislusf/seaweedfs/issues/1106
2019-11-08 22:41:02 -08:00
zhangsong
1dd101f782 use read lock to avoid io hang during heartbeat 2019-11-08 20:27:55 +08:00
stlpmo
1c8bed3810 delete the var etcdClient and comments
refactor the code
add sequencer cmd-line
delete nerver used codes
2019-11-05 15:45:25 +08:00
stlpmo
364f7200ad Create etcd_sequencer.go
the 1st version
2019-11-04 16:36:06 +08:00
Lei Liu
1294999d8b return error when garbageThreshold is not a valid float number
Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-10-31 20:43:20 +08:00
Lei Liu
1bcef02a6c fix dir/lookup and col/delete api
1, Fix Layouts first letter capitalized
2, Return http 204 when delete a collection

Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-10-31 16:55:45 +08:00
Lei Liu
f2f90436ef fix leader master /dir/lookup api
Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-10-30 16:38:40 +08:00
Chris Lu
db30a46050 skip memory mapped file when compacting 2019-10-29 23:34:38 -07:00
Chris Lu
5b950c735e Merge branch 'master' into refactoring_dat_backend 2019-10-29 23:18:41 -07:00
Chris Lu
57e441d67b fix compaction logic 2019-10-29 23:18:01 -07:00
Chris Lu
b7156291a8 adjust variable names 2019-10-29 23:16:43 -07:00
Chris Lu
4b5ba4927f adjust NewDiskFile() paramaters 2019-10-29 22:37:36 -07:00
Lei Liu
c2884cace2 misc updated
Signed-off-by: Lei Liu <lei01.liu@horizon.ai>
2019-10-29 21:28:28 +08:00
Chris Lu
cd7ce720c7 fix test 2019-10-29 00:37:15 -07:00
Chris Lu
19b6a16003 changed from os.file to backend.DataStorageBackend 2019-10-29 00:35:16 -07:00
Chris Lu
eb2172f63f FUSE: add os specific mount options
related to https://github.com/chrislusf/seaweedfs/issues/1094
2019-10-27 09:12:10 -07:00
Chris Lu
71eb8efd20 fix error logs 2019-10-25 09:44:58 -07:00
Chris Lu
55a2221eba master: add logging for volume server disconnection
add logging for https://github.com/chrislusf/seaweedfs/issues/1093
2019-10-25 09:35:19 -07:00
Chris Lu
69de05f6cb go fmt 2019-10-25 07:45:12 -07:00
Chris Lu
288c45a690 fix iitial filer url 2019-10-25 07:44:37 -07:00
Chris Lu
05fe7a2366
Merge pull request #1092 from binbinshi/master
fix: weed shell filer config is constant
2019-10-25 07:08:59 -07:00
shibinbin
fe1f469978 fix : change default filer.port to 8888 2019-10-25 17:39:29 +08:00
shibinbin
3464f21b5c fix: weed shell add filer runtime attributes 2019-10-25 17:34:03 +08:00