chihe
576d4ce771
refactor(clientmetanode): hybrid cloud add debug log to check opMetaExtentsList value
...
Signed-off-by: chihe <chihe@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
7a0f5d43bd
fix(metanode): hybrid cloud copy storage class from HybridCouldExtentsMigration of inode when executing migration
...
Signed-off-by: chihe <chihe@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
30b8a98bbf
fix(metanode): hybrid cloud Copy WriteGeneration and ForbiddenMigration when getting inode from btree
...
Signed-off-by: chihe <chihe@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
5f5fd78af9
fix(metanode): hybrid cloud fix writeGen rollback to 0
...
Signed-off-by: chihe <chihe@oppo.com>
2024-12-26 09:24:22 +08:00
zhaochenyang
d207dcc6fe
refactor(lcnode): hybrid cloud fix lcnode log
...
Signed-off-by: zhaochenyang <zhaochenyang@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
94dcb991db
feat(metanode): hybrid cloud add audit log for migration
...
Signed-off-by: chihe <chihe@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
d9c01f0af5
fix(client): hybrid cloud Fix some places where the original condition
...
should be changed to "vol storageClass is blobstore".
Adds field volStorageClass to ExtentClient for this purpose.
Remove field volumeType from ExtentClient by the way.
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
5baafaef59
feat(meta): hybrid cloud provide an API to modify inode's ctime, for debug/test purpose.
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
zhaochenyang
75925990f1
refactor(lcnode): hybrid cloud lifecycle transition
...
1. add debug service
Signed-off-by: zhaochenyang <zhaochenyang@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
a62522f2f5
feat(meta): handle compatibility when old client send create request without field StorageClass
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
3de7e847a9
feat(master): handle compatibility of master when older version upgrade to hybrid cloud:
...
(1) auto set mediaType of datanode, zone, datapartiton by config legacy "legacyDataMediaType" and persist;
(2) auto set storageClass of volume by config legacy "legacyDataMediaType" and persist;
(3) if need to rollback master to older version, need to do nothing, just replace to old master and restart. because hybrid cloud master only add new fields to meta by not changed old fields.
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
88567fbf65
fix(master): hybrid cloud if vol.volStorageClass is blobStore, add allowedStorageClass is forbidden.
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
6f6ea34f2a
fix(master): hybrid cloud amend the way judging if the volume has snapshot version, in update allowedStorageClass procedure.
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
a2c2d4a704
fix(metanode): hybrid cloud assign migration hdd ek in UpdateExtentKeyAfterMigration
...
Signed-off-by: chihe <chihe@oppo.com>
2024-12-26 09:24:22 +08:00
zhaochenyang
4c73097a3d
refactor(lcnode): hybrid cloud lifecycle transition
...
1. close extent client
2. use StorageClass_Replica_HDD and StorageClass_BlobStore
3. scanner init AllowedStorageClass
4. enhance lifecycle parameter check
5. add extent client for write
Signed-off-by: zhaochenyang <zhaochenyang@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
eb2d65002b
refactor(metanode): hybrid cloud 1.Simplify the logic of updating extent key after migration
...
2. reset inode reserved when excute marshall operation
3. initial ebs client in mp
4. remove cold vol or hot vol check in client and objectnode
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
5f4ee4eacb
fix(metanode): hybrid cloud fix bug when update extent key after migration
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
505015cd17
refactor(metanode): hybrid cloud add api for get full inode infomation include eks
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
f637d0cc19
fix(metanode): hybrid cloud check sortedEks is nil when excute fsmAppendExtentsWithCheck
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
0bc93129de
refactor(client): hybrid cloud only file opened with write request needs to forbidden migration
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
zhaochenyang
d89812aaf0
feat(lcnode): hybrid cloud lifecycle transition
...
Signed-off-by: zhaochenyang <zhaochenyang@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
284ca0d211
feat(metanodeclient): hybrid cloud support hybridcloud data migration
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
35ed550795
feat(master): hybrid cloud forbidden AdminCreateVersion API because hybrid cloud not support snapshot version yet
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
8a5bc8583a
feat(master)๏ผmake the snapshot version and multiple storageClass mutually exclusive in a volume.
...
Because now multiple allowedStorageClass can not support snapshot version.
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
9d2bf3b483
feat(mastercli): add API to add storageClass to volume's allowedStorageClass list
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
5bcc78bb43
fix(master): in create vol procedure, update datapartition view cache right after the creation of datapartitions
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
5936cdfe8d
fix(master): amend some logs
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
443199e0b0
fix(client): hybrid cloud only clear dp when volume storage class is blobstore
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
1f227e722c
fix(master): in create volume, sort allowedStorageClass after check if append volStorageClass info
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
10685ceba0
fix(master): when updateVol, check that req.VolStorageClass should be in vol.allowedStorageClass
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
d250c3041a
fix(master): check if the cluster has resource to support req.VolStorageClass when create vol
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
f04993070b
fix(master): some fix about datapartition creation
...
(1) while creating dp in vol creation, check dp count by mediaType to judge if success.
(2) when background periodical check if need to create dp, skip volumes whose createTime is too recently, to avoid background create dp while volume is creating.
(3) display mediaType of dp in cfs-cli cmd "volume info -d"
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
9d0d2c9fef
feat(master): hybrid cloud sort AllowedStorageClass[] while creating volume
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
1cdf8fcd39
fix(metanode): hybrid cloud fix log panic in function of deleteMarkedEBSInodes
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
51554785e3
fix(master): hybrid cloud not set zoneName as default value if not assigned in the create vol request.
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
4815a61444
fix(client): hybrid cloud fix bug about checking media type of dp
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
3373c73b4f
fix(master): ybrid cloud not use var pointer dataNode if not got it from cluster, to avoid panic
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
7a7b663b6c
feat(mastercli): hybrid cloud vol.volStorageClass can be changed by "cfs-cli volume update"
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
347208f189
refactor(clientmetanode): hybrid cloud check inode/vol storage class when checking vol type
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
1f9dab0eda
feat(masterclientpreload): add property CacheDpStorageClass to volume.
...
CacheDpStorageClass is used to inform SDK which storageClass to use when access cache dp.
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
92d1d54832
feat(master): volume supports multi mediaType based on the refactored codes from v3.4.0
...
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
14d7e0e19c
feat(masterclientcli): hybrid cloud add property mediaType to datapartition
...
(1)master: when creating vol, master creates dps of each mediaType according to vol.allowedStorageClass
(2)client: when select dp to do append write, choose dp with spcific mediaType according to inode's storageClass
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
6cafecdb7d
feat(masterclientcli): add property volStorageClass and allowedStorageClass to volume
...
now volType is not uesed while creating volume, but is maintained for compability
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
3081a30168
feat(master): hybrid cloud add mediaType property to zone
...
(1) zone mediaType is set as the first add-in datanode's mediaType
(2) once zone mediaType is set, all datanodes in the zone must be the same mediaType.
(3) the cmd 'cfs-cli zone info' shows zone mediaType.
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
029d1b359e
feat(clientmetanode): hybrid cloud support change inode storageclass when updating ek
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
7a915e87e0
feat(client): hybrid cloud supports the option to choose SSD or HDD data partition
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
e1442f7de1
feat(clientmetanode): hybrid cloud support renewal inode forbidden migration
...
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
chihe
7211b09cd6
feat(meta): hybrid cloud inode supprot hybrid-clound
...
2.client read/write support hybrid-clound
Signed-off-by: chihe <chi.he@oppo.com>
2024-12-26 09:24:22 +08:00
true1064
f70b3cfe38
feat(masterdatacli): hybrid cloud add datanode's mediaType
...
for module master and datanode; the cmd 'cfs-cli datanode info' can show datanode's mediaType
Signed-off-by: true1064 <tangjingyu@oppo.com>
2024-12-26 09:24:22 +08:00
Victor1319
fd428b4706
refactor(master): fix confilcts when pick 3.4.0. #22906448
...
Signed-off-by: Victor1319 <zengxuewei@oppo.com>
2024-12-26 09:24:22 +08:00