Commit Graph

334 Commits

Author SHA1 Message Date
tangdeyi
e122cb60f3 feat(clustermgr): add cluster readonly manager api
with #1000596325

Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2026-04-21 09:23:09 +08:00
tangdeyi
6499ead6d5 feat(clustermgr): raft filewal cleans trash log by itself
with #1000543617

Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2026-04-21 09:23:09 +08:00
tangdeyi
be22aad2b7 feat(clustermgr): create and update volume route
with #1000431984

Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2026-04-21 09:23:09 +08:00
slasher
06f8fb00cf feat(log): apply async logger to app and api
. #1000453008

Signed-off-by: slasher <shenjie1@oppo.com>
2026-04-21 09:23:09 +08:00
zhangjianwei2
00fa06c716 feat(bssdk): support specify code_mode and cluster_id for access sdk put api
fixes: https://github.com/cubefs/cubefs/issues/3954

@formatter:off

Signed-off-by: zhangjianwei2 <zhangjianwei2@cmss.chinamobile.com>
2026-04-21 09:23:09 +08:00
JasonHu520
199a945da0 perf(scheduler): optimize volume lock and disk limiting conflicts
with: #1000414417
Signed-off-by: JasonHu520 <huzongchao@oppo.com>
2026-04-21 09:23:09 +08:00
xiejian
8960fc7232 feat(shardnode): no need to wait apply member change when delete shards of broken disk
with #1000176986

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:49:59 +08:00
slasher
29eb157da0 feat(rpc2): reuse stream of definded errors
. #1000347649

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:47:54 +08:00
slasher
42ebc216ca fix(rpc): atomic error with all type
. #1000341010

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:47:54 +08:00
xiejian
a1b9bbb10c feat(shardnode): 1.add delete log for blobdeleter, add some trace log
with: #1000042472

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:29:35 +08:00
xiejian
0cbe1e276b feat(shardnode): support http rpc service
with: #1000324330

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:29:35 +08:00
slasher
44d2151d55 fix(trace): thread safe in trace span logging
. #1000320592

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:35 +08:00
slasher
81136e138e chore(util): alignment adds full size and blocks
. #1000334184

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:35 +08:00
xiejian
0b116a1097 feat(shardnode): support function for building blob name or item id with shardkeys
change shardkeys type from [][]byte to []string

with: #1000042472

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:29:35 +08:00
mawei029
0d5c51eca8 fix(blobnode): when task call io pool submit, but ctx is cancel, fix return error
with: #1000309518

Signed-off-by: mawei029 <mawei2@oppo.com>
2025-10-13 15:29:35 +08:00
xiejian
8704c5b061 fix(shardnode): change blob name and item id data type from bytes to string
with: #1000181642

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:29:35 +08:00
slasher
72cb5e8a87 feat(util): add Any2String and String2Any
. #1000334184

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:35 +08:00
mawei029
3ae408e632 feat(blobnode): optimize log print, query inspect progress, record local log
with: #1000276667, #1000276672

Signed-off-by: mawei029 <mawei2@oppo.com>
2025-10-13 15:29:35 +08:00
xiejian
e9ef158574 fix(raft): limit entries size when call storage.Entries
with: #23065907

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:29:34 +08:00
slasher
b346da9385 fix(access): new span for background task
. #1000247577

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:34 +08:00
JasonHu520
5a47e79981 perf(scheduler): optimize the punish time for failed deletion
with: #1000241330

Signed-off-by: JasonHu520 <huzongchao@oppo.com>
2025-10-13 15:29:34 +08:00
xiejian
a548e93f81 feat(shardnode): set shardKeys in blob name or item id, use '{}' to mark
with: #1000181642

Signed-off-by: xiejian <xiejian3@oppo.com>
2025-10-13 15:29:34 +08:00
slasher
2de4f09154 feat(rpc2): close recv and send if error in stream client
. #1000219604

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:34 +08:00
mawei029
83f0b7c140 feat(blobnode): start mode split blobnode service
with: #1000159741

Signed-off-by: mawei029 <mawei2@oppo.com>
2025-10-13 15:29:34 +08:00
slasher
ed1b827156 feat(common): add zero buffer checker
cpu: Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
BenchmarkIsZeroBuffer
BenchmarkIsZeroBuffer/1M-zero-all
BenchmarkIsZeroBuffer/1M-zero-all-4        50384       23927   ns/op  0 B/op  0 allocs/op
BenchmarkIsZeroBuffer/1M-not-zero-first
BenchmarkIsZeroBuffer/1M-not-zero-first-4  1000000000      0.4 ns/op  0 B/op  0 allocs/op
BenchmarkIsZeroBuffer/1M-not-zero-mid
BenchmarkIsZeroBuffer/1M-not-zero-mid-4    108770      10617   ns/op  0 B/op  0 allocs/op
BenchmarkIsZeroBuffer/1M-not-zero-last
BenchmarkIsZeroBuffer/1M-not-zero-last-4   48726       22504   ns/op  0 B/op  0 allocs/op

. #1000180877

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:34 +08:00
slasher
22bb533794 chore(test): change erroris target and err
. #1000042638

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:34 +08:00
JasonHu520
2f0b2b163b feat(blobnode): chunk data support batch read
with: #1000135108

Signed-off-by: slasher <shenjie1@oppo.com>
Signed-off-by: JasonHu520 <huzongchao@oppo.com>
2025-10-13 15:29:34 +08:00
mawei029
80b069d508 refactor(blobnode): optimize io context cancel, and it has become simpler
with: #1000146037

Signed-off-by: mawei029 <mawei2@oppo.com>
2025-10-13 15:29:34 +08:00
slasher
7772b9ee6b feat(blobnode): add nopdata in blobnode
. #1000117014

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:34 +08:00
slasher
bc69c2abeb perf(trace): use range function instead copy of slice
. #23135507

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
0dc16bcc09 perf(trace): cache span start options and id
Benchmark_Span_Pool
Benchmark_Span_Pool/cached
Benchmark_Span_Pool/cached-4  1656540 724.6 ns/op   48 B/op   1 allocs/op
Benchmark_Span_Pool/nocache
Benchmark_Span_Pool/nocache-4  906054  4233 ns/op 1224 B/op  17 allocs/op

. #23135507

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
ec6ee4a793 perf(trace): cache span to reduce allocation in span tracking
Benchmark_Span_Pool
Benchmark_Span_Pool/nocache
Benchmark_Span_Pool/nocache-4  506971  6923 ns/op  1520 B/op  32 allocs/op
-->
Benchmark_Span_Pool
Benchmark_Span_Pool/cached
Benchmark_Span_Pool/cached-4   732175  1585 ns/op  654 B/op  16 allocs/op
Benchmark_Span_Pool/nocache
Benchmark_Span_Pool/nocache-4  688984  3551 ns/op 1582 B/op  23 allocs/op

Benchmark_Span_TrackLog
Benchmark_Span_TrackLog/duration-any
Benchmark_Span_TrackLog/duration-any-4    16785505  70.35 ns/op  0 B/op  0 allocs/op
Benchmark_Span_TrackLog/duration-second
Benchmark_Span_TrackLog/duration-second-4 18425104  64.40 ns/op  0 B/op  0 allocs/op
Benchmark_Span_TrackLog/duration-error
Benchmark_Span_TrackLog/duration-error-4  17530114  65.82 ns/op  0 B/op  0 allocs/op

. #23135507

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
ac1e84bf0b perf(trace): avoid to allocate option struct in span tracking
from:
Benchmark_Span_TrackLog
Benchmark_Span_TrackLog/duration-any
Benchmark_Span_TrackLog/duration-any-4      7892170  457.1 ns/op  40 B/op  3 allocs/op
Benchmark_Span_TrackLog/duration-second
Benchmark_Span_TrackLog/duration-second-4  10384854  113.5 ns/op  28 B/op  3 allocs/op
Benchmark_Span_TrackLog/duration-error
Benchmark_Span_TrackLog/duration-error-4    5301676  500.1 ns/op  80 B/op  6 allocs/op

to:
Benchmark_Span_TrackLog
Benchmark_Span_TrackLog/duration-any
Benchmark_Span_TrackLog/duration-any-4     11378097  97.32 ns/op  16 B/op  1 allocs/op
Benchmark_Span_TrackLog/duration-second
Benchmark_Span_TrackLog/duration-second-4  17787051  211.9 ns/op  24 B/op  3 allocs/op
Benchmark_Span_TrackLog/duration-error
Benchmark_Span_TrackLog/duration-error-4    9427880  189.0 ns/op  40 B/op  3 allocs/op

. #23135507

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
823d3f3a0c pref(rpc2): _gc_ reuse objects in rpc2
. #23113571

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
e5125b59c4 pref(rpc2): _gc_ reuse objects in transport frames
. #23113571

cpu: Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
BenchmarkAcceptClose
BenchmarkAcceptClose  276475   5393 ns/op  904 B/op  7 allocs/op
BenchmarkConnSmux
BenchmarkConnSmux      39103  31170 ns/op  121 B/op  0 allocs/op
BenchmarkPipeSmux
BenchmarkPipeSmux      90400  13771 ns/op    6 B/op  0 allocs/op
BenchmarkConnTCP
BenchmarkConnTCP       61194  18310 ns/op    0 B/op  0 allocs/op
BenchmarkRangedWrite
BenchmarkRangedWrite  242226   5230 ns/op   24 B/op  0 allocs/op

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
a793d19ce0 pref(rpc2): _gc_ reuse objects in transport allocator
. #23113571

cpu: Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
BenchmarkMSB
BenchmarkMSB         172919274   6.938 ns/op  0 B/op  0 allocs/op
BenchmarkAllocator
BenchmarkAllocator    38689362  31.63  ns/op  1 B/op  0 allocs/op
BenchmarkBufferRing
BenchmarkBufferRing     278162    4190 ns/op  0 B/op  0 allocs/op

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
50c3e4b4e8 fix(rpc2): write limited body to reader
. #1000334184

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
7fcb5c327a feat(blobnode): ranged read with aligned buffer
. #22951605

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
7f8a4916d8 feat(util): alignment size's head and padding tail
. #22984144

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
d00703a458 feat(transport): add ranged writer of frame
. #22922156

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
a2c0dfbadc feat(transport): add flag error for writing to next frame
. #22922145

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
7fcee0e46f feat(rpc2): aligned checksum buffer in request and response body
saving bytes in small en-decode body

. #22922123 #22922136

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
d54ac862f5 feat(transport): allocated buffer with frame header and aligned address
. #22922112

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
8c156972a8 chore(testing): move mock files to testing all
. #1000145567

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
tangdeyi
3cebf9fdbf feat(clustermgr): lock unlock volume support epoch
with #1000102800

Signed-off-by: tangdeyi <tangdeyi@oppo.com>
2025-10-13 15:29:33 +08:00
JasonHu520
f2bd5dc417 fix(raft): should check header of snapshot request
with: #1000100262

Signed-off-by: JasonHu520 <huzongchao@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
6506cab835 feat(common): add extend codemode
. #1000111154

close .3773 .3767

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
slasher
3d00ed9baf feat(rpc2): add wait queue in client
. #1000106546

Signed-off-by: slasher <shenjie1@oppo.com>
2025-10-13 15:29:33 +08:00
JasonHu520
9d8ec7c880 feat(raft): multi-raft build transport based on rpc2 stream mode
with: #1000100262

Signed-off-by: JasonHu520 <huzongchao@oppo.com>
2025-10-13 15:29:33 +08:00
zhangjianwei2
b6c48c5a4e fix(common): correct kafka monitor error log for blobstore
Signed-off-by: zhangjianwei2 <zhangjianwei2_yewu@cmss.chinamobile.com>
2025-09-19 15:22:05 +08:00