BUGFIXES
- #1435 fix: gc objects
BUGFIXES
FEATURES
- #1428 perf: receive done
BUGFIXES
- #1404 fix: use exponential backoff for task retry policy
- #1406 fix: change replicate failure error code to 404 when object is not found
- #1407 fix: refine error code for bucket migration
- #1409 fix: avoid users to select network in universal endpoint page
- #1412 fix: bs bucket migrate event bug
- #1414 fix: metric check sp
- #1415 fix: check sp health retry
- #1422 fix: gvg staking storage size
FEATURES
- #1405 feat: bs add bucket status field
- #1408 feat: add detailed logs for special customized logs
- #1416 perf: logic
DOCS
BUGFIXES
- #1394 fix: pick new gvg when retry failed replicate piece task
- #1391 fix: check if it is AgentUploadTask
- #1390 fix: delegate upload param check
- #1389 fix: delegate upload param check
- #1387 fix: upgrade deps for fixing vulnerabilities
- #1386 fix: check if BucketExtraInfo is nil
- #1384 fix: fix db override
FEATURES
- #1392 feat: provide recommended vgf
BUGFIXES
- #1375 fix: fix GC issue
- #1379 perf: replicate piece
- #1378 fix: deletion on checksum not fully performed and fail to override duplicate checksum
FEATURES
- #1354 feat: simplify off-chain-auth
- #1353 feat: Primary SP as the upload agent
- #1351 feat: sp monthly free quota
BUGFIXES
- #1344 fix: exclude timestamp from recovery piece key to avoid duplicate requests
- #1342 fix: Upload_Done task loaded from DB does not have GVG info
- #1336 fix: 500 error code when bucket is deleted
- #1334 fix: gc object retry due to deleted bucket
FEATURES
- #1337 feat: atomic object update
- #1345 feat: update gvg save logic
- #1340 feat: add more info in status api
BUGFIXES
- #1347 fix: init the bucket traffic when NotifyPreMigrateBucketAndDeductQuota
- #1343 fix: correct the bucket quota formula when pre-check in bucket migration
- #1341 fix: let bucket migration be able to start without a pre-read of bucket content
- #1333 fix: Not allow to upload piece/object for a fully-uploaded object
- #1314 fix: special object download issue
- #1315 fix: blocksyncer sequential processing
- #1316 fix: fix complete swap in
FEATURES
This release contains 1 bugfix.
BUGFIXES
- #1333 fix: Not allow to upload piece/object for a fully-uploaded object
This release contains 2 bugfix and 2 feature.
BUGFIXES
FEATURES
This release contains 1 bugfixes.
BUGFIXES
- #1305 fix: secondary SP might need to wait object meta due to latency
This release contains 2 bugfixes.
BUGFIXES
This release contains 1 bugfix and 1 feature.
BUGFIXES
- #1289 fix: replicate failed sp idx not included in local task
FEATURES
- #1291 feat: add more log
BUGFIXES
- #1284 fix: remove tags field when creating object/group/bucket
BUGFIXES
- #1282 fix: delete prefix tree slow query issue
FEATURES
- #1263 feat: add Tags in object/bucket/group
- #1260 feat: add task retry scheduler
- #1258 add deposit and delete operation to GVG in signer and fix a few issue
- #1190 gc for zombie piece & metaTask & bucket migration
BUGFIXES
- #1257 fix: httpcode error
- #1259 fix: refine error message when object status is unexpected
- #1256 fix: fix the slow xml marshaling when returning a large list of objects
- #1266 fix: queried gvg might be nil
- #1270 fix: list object by bucket name bug
- #1277 fix: group members api incorrect tags/source_type/extra response
FEATURES
- #1240 feat: add a DataMigrationRecord table to save the process record for data migration tasks
- #1218 feat: add sp health for pick sp
- #1237 feat: signer module adds metrics for each rpc interface
- #1227 feat: add reject bucket migration
- #1224 feat: add gnfd cmd to query sq incomes
- #1223 feat: update storage size for bucket apis
- #1118 feat: Quota improvement for bucket migration
- #1201 feat: sp adds http probe to improve service stability
- #1207 feat: update recover object command for k8s job
- #1197 feat: add golang runtime metrics, process metrics and std lib db metrics
- #1167 feat: add error code in http metrics to help locate problems
BUGFIXES
- #1245 fix: fix sp healthy checker dead lock bug
- #1228 fix: primary sp should check received ssp signature before sealing
- #1229 fix: sp should resume picking VGF regardless of RPC error
- #1198 fix: refine the error msg for ErrInvalidExpiryDate header and parameter
- #1222 fix: bucket size write DB failed
- #1221 fix: gateway module remove dependency on spdb
- #1220 fix: fix metrics and pprof disable bug
- #1213 fix: update expiration new logic UT
- #1215 fix: delete aliyunfs code
- #1170 fix: skip error when object is deleted
- #1212 fix: return 400 when getting invalid header for getNonceAPI
- #1203 fix: error code when invalid signature
- #1184 fix: fix resource leak
- #1204 fix: remove the order by clause for discontinuing function
- #1199 fix: fix time.Since called in defer, it should be used in defer func
- #1183 fix: adjust sp command description
- #1180 fix: replace record not found with empty array
This release contains 2 bugfix.
BUGFIXES
- #1229 fix: sp should resume picking VGF regardless of RPC error
- #1239 fix: add timeout for RPC calls to Secondary SP
This release contains 1 bugfix.
BUGFIXES
- #1231 fix: fix: add config sp blacklist
This release contains 1 bugfix.
BUGFIXES
- #1214 fix: abort replication task if an object sealed
This release contains 2 bugfixes and 1 feature.
FEATURES
- #1200 feat: add index to update at
BUGFIXES
- #1189 fix: add challenge v2 api to avoid piece hash http header too large
- #1195 fix:bs job connect db bug
FEATURES
BUGFIXES
This is the first official version for the main-net deployment.
BUGFIX
- #1171 fix: fix init the NotAvailableSpIdx
BUGFIX
- #1166 fix: delete group fix job
- #1160 fix: fix replication failed SP err recording issue
- #1159 fix: list objects by gvg sql bug
- #1165 fix: verify permission 500 code and update UT
- #1155 fix: fix manager duplicate entry when inserting upload progress
- #1158 fix: add xml response for rate limit error
- #1156 fix: recovery object status should be sealed
- #1154 fix: add ut for universal endpoint
TEST
- #1157 test: add metadata api UT
BUGFIX
- #1151 fix: update new logic of metadata apis
FEATURES
- #1109 feat: add migrate piece auth check
- #1131 feat: limit creating object and migrating bucket approval
BUGFIX
- #1130 fix: defer returning err until all goroutines are done
- #1134 fix: readme
- #1139 fix: refactoring code for getObject and Universal apis
- #1140 fix: add replicate check permission
- #1142 fix: resumable queue bug
- #1145 fix: policy statement is empty
- #1146 fix: fix integrity hash check
- #1147 fix: fix uploader server read closed channel
TEST
- #1143 test: add blocksyncer ut case
BUGFIX
- #1135 fix: effect allow issue
FEATURES
- #1129 feat: add back metadata go routine listener
- #1128 feat: support expire time check of SP task info
BUGFIX
- #1092 fix: support reimburse quota if download consumed extra quota
- #1127 fix:bs groups unique index
- #1125 fix: expiration time for statement
TEST
- #1126 test: modular/executor pkg adds UTs
FEATURES
- #1112 feat: support GfSpGetSPMigrateBucketNumber
BUGFIX
- #1121 fix: fix tls MinVersion to 1.2
- #1119 fix: stop all replicate jobs and done replicate job by context
- #1117 fix: include private cause bucket not found
TEST
- #1115 test: modular/gater pkg adds UTs part II
FEATURES
- #1029 feat: use aliyun oss sdk to visit oss
- #1042 feat: add go routine metrics
- #1057 feat: list object policies and add number of group members
- #1067 feat: Docker image distroless update
- #1111 feat: only persist the init off-chain-auth record when first updating
- #1103 feat: list groups by ids
- #1088 feat: recover object list
- #1077 feat: support ListUserPaymentAccounts & ListPaymentAccountStreams
BUGFIX
- #1039 fix: remove funding key in singer module
- #1053 fix: add more metrics log for PickUpTask
- #1054 fix: fix quota db to support get quota by month
- #1062 fix: add fingerprint to approval key
- #1071 fix: cancel migrate bucket bug
- #1074 fix: set correct Content-Disposition when downloading an object
- #1104 fix: refactor quota table
- #1107 fix: api rate limiter path sequence
- #1106 fix: sec issue about conversion alerts
- #1089 fix: sec issue about conversion alerts
- #1098 fix: self sp id retrieval
- #1097 fix: fix group ExpirationTime bug
- #1093 fix: verify permission if expiration time = 0 bug
- #1087 fix: upgrade libp2p and cosmos-sdk version to solve security issues
- #1084 fix: resumable upload support 64g file
- #776 fix: code security check
- #1078 fix: add more resource manager log
TEST
- #1032 test: modular/approver pkg adds UTs
- #1035 test: metadata bsdb UT
- #1040 test: add cmd ut
- #1046 test: add downloader ut
- #1068 test: gfspapp pkg adds UTs part II
- #1073 test: gfspconfig and gfsppieceop pkg add UTs
- #1108 test: modular/gater pkg adds UTs
- #1095 test: modular/uploader pkg adds UTs
- #1096 test: base/gfsprcmgr pkg adds UTs
- #1090 test: base/gfspclient pkg adds UTs
- #1082 test: base/types directory adds UTs
- #1076 test: gfsptqueue and gfspvgmgr pkg add UTs
- #1060 test: add receiver ut
- #1086 test: add blocksyncer e2e test
FEATURES
- #989 feat: impl group apis and fix verify permission bug
- #1008 feat: change auth api response from json to xml
- #1010 feat:blocksyncer add realtime mode
- #1015 feat: retrieve groups where the user is the owner
- #1012 feat: error handle updates to provide useful messages
- #1025 feat: change json response body to xml
BUGFIX
- #999 fix: fix bug for metadata crash
- #1000 fix: fix occasional compile error
- #1006 fix: rename api name and replace post to get
- #1014 fix: "failed to basic check approval msg"'s bug
- #1016 fix:blocksyncer delete group bug
- #996 fix: db update bucket traffic by transaction
- #955 fix: fix src gvg is overwritten
- #1018 fix: empty bucket when bucket migrate
TEST
- #1001 test: sp db pkg adds unit test
- #912 ci: add coverage report for tests
- #1007 test: sp db pkg adds unit test part II
- #1009 test: core pkg generates mock files
- #1019test: gfspapp pkg adds UTs
FEATURES
- #857 feat: validate virtual group families' qualification
- #985 feat:time Ticker
- #981 feat: add tx confirm func and create virtual group retry
- #968 feat: bucket migrate check when load from db
REFACTOR
- #983 refine: refactor bucket migrate code
- #953 Refactor manager that dispatch task model
- #976 chore: refine migrate piece workflow
- #960 docs: polish sp docs to the lastest version
BUGFIX
- #908 fix: auth refactoring for security review
- #987 fix: ignore duplicate entry when create bucket traffic
- #973 fix: add missing path for pprof server
- #966 fix: refine migrate gvg task workflow
- #965 fix: repeated error xml msg
- #963 fix: only metadata and blocksyncer need to load bsdb
- #955 fix: check sp and bucket status when putting object
- #935 fix: empty bucket when bucket migrate
- #927 fix: filter complete migration buckets
TEST
- #982 test: piece store pkg storage dir adds unit test
- #977 test: piece store pkg adds unit test
- #967 test: package util adds unit test
FEATURES
- #867 feat: impl ListObjectsByGVGAndBucketForGC and object details
- #888 feat: metadata and block syncer monitor
- #890 feat: add generate gvg sp policy
- #851 feat: support query sp
REFACTOR
- #860 refactor: update quota consumption method
BUGFIX
- #848 fix: fix recover command
- #876 fix: GVGPickFilter CheckGVG func's paramter
- #893 fix:blocksyncer object map id
- #868 fix: fix aliyun credential expiration issue
- #894 feat: revert grpc keepalive params
- #897 fix: private universal endpoint special suffix handle
- #898 fix:blocksyncer monitor
FEATURES
- #824 feat: support sp exit and bucket migrate
- #856 feat: update local virtual group event
- #853 feat: update greenfield-go-sdk e2e version
- #852 ci: fix docker-ci.yml to push develop
- #865 feat: add bucket migrate & sp exit query cli
BUGFIX
- #834 fix: remove v2 Authorization
- #832 fix: add checking logic for sig length and public length
- #839 fix: blocksyncer panic
- #847 fix: block syncer copy object
- #850 fix: handle concurrent spdb table creation
- #814 fix: verify group permission
- #858 fix: resumable upload maxpayload size bugs
- #863 fix: optimize piece migration logic to avoid oom
FEATURES
- #664 feat: simulate discontinue transaction before broadcast
- #643 feat: customize http client using connection pool
- #681 feat: implement aliyun oss storage
- #706 feat: verify object permission by meta service
- #699 feat: SP database sharding
- #795 feat: basic workflow adaptation in sp exit
REFACTOR
BUGFIX
- #672 fix: fix data recovery
- #690 fix: re-enable the off chain auth api and add related ut
- #810 fix: fix aliyunfs by fetching credentials with AliCloud SDK
- #808 fix: fix authenticator
- #817 fix: resumable upload max payload size
FEATURES
REFACTOR
- #649 docs: sp docs add flowchart
BUGFIX
- #648 fix: request cannot be nil in latestBlockHeight
FEATURES
- #502 feat: support b2 store
- #512 feat: universal endpoint for private object
- #517 feat:group add extra field
- #524 feat: query storage params by timestamp
- #525 feat: reject unseal object after upload or replicate fail
- #528 feat: support loading tasks
- #530 feat: add debug command
- #533 feat: return repeated approval task
- #536 feat:group add extra field
- #542 feat: change get block height by ws protocol
REFACTOR
- #486 refactor: off chain auth
- #493 fix: refine gc object workflow
- #495 perf: perf get object workflow
- #503 fix: refine sp db update interface
- #515 feat: refine get challenge info workflow
- #546 docs: add sp infra deployment docs
- #557 fix: refine error code in universal endpoint and auto-close the walle…
BUGFIX
FEATURES
- #444 feat: refactor v0.2.1 query cli
- #446 feat: add p2p ant address config
- #449 feat: metadata service and universal endpoint refactor v0.2.1
- #450 refactor:blocksyncer
- #468 feat: add error for cal nil model
- #471 refactor: update listobjects & blocksyncer modules
- #473 refactor: update stop serving module
BUGFIX
- #431 fix: data query issues caused by character set replacement
- #439 fix:blocksyncer oom
- #457 fix: fix listobjects sql err
- #462 fix: base app rcmgr span panic
- #464 fix: task queue gc delay when call has method
FEATURES
- #358 feat: sp services add pprof
- #379 feat:block syncer add read concurrency support
- #383 feat: add universal endpoint view option
- #389 feat: signer async send sealObject tx
- #398 feat: localup shell adds generate sp.info and db.info function
- #401 feat: add dual db warm up support for blocksyncer
- #402 feat: bsdb switch
- #404 feat: list objects pagination & folder path
- #406 feat: adapt greenfield v0.47
- #408 feat: add gc worker
- #410 feat: support full-memory replicate task
- #411 feat:add upload download add bandwidth limit
- #412 feat: add get object meta and get bucket meta apis
BUGFIX
- #355 fix: universal endpoint spaces
- #360 fix: sql parenthesis handling
- #378 fix: support authv2 bucket-quota api
- #413 fix: fix nil pointer and update db config
FEATURES
- #308 feat: adds seal object metrics and refine some codes
- #313 feat: verify permission api
- #314 feat: support path-style api and add query upload progress api
- #318 feat: update schema and order for list deleted objects
- #319 feat: implement off-chain-auth solution
- #320 chore: polish tests and docs
- #329 feat: update greenfield to the latest version
- #338 feat: block sycner add txhash when export events & juno version update
- #340 feat: update metadata block syncer schema and add ListExpiredBucketsBySp
- #349 fix: keep retrying when any blocksycner event handles failure
FEATURES
- #274 feat: update stream record column names
- #275 refactor: tasknode streaming process reduces memory usage
- #279 feat: grpc client adds retry function
- #292 feat: add table recreate func & block height metric for block sycner
- #295 feat: support https protocol
- #296 chore: change sqldb default config
- #299 feat: add nat manager for p2p
- #304 feat: support dns for p2p node
- #325 feat: add universal endpoint
- #333 fix: use EIP-4361 message template for off-chain-auth
- #339 fix: permit anonymous users to access public object
- #347 fix: add spdb and piece store metrics for downloader
BUGFIX
- #277 fix: rcmgr leak for downloader service
- #278 fix: uploader panic under db access error
- #279 chore: change default rcmgr limit to no infinite
- #286 fix: fix challenge memory is inaccurate
- #288 fix: fix auth type v2 query object bug
- #306 fix: fix multi update map bug and polish db error
- #337 fix: permit anonymous users to access public objec
BUGFIX
- #258 fix put object verify permission bug
- #264 fix: fix payment apis nil pointer error
- #265 fix: fix sa iam type to access s3
- #268 feat: update buckets/objects order
- #270 feat: update buckets/objects order
- #272 fix: upgrade juno version for a property length fix
BUILD
FEATURES
- #211 feat: sp services add metrics
- #221 feat: implement p2p protocol and rpc service
- #232 chore: refine gRPC error code
- #235 feat: implement metadata payment apis
- #244 feat: update the juno version
- #246 feat: resource manager
BUILD
- #231 ci: add gosec checker
FEATURES
- #202 feat: update get bucket apis
- #205 fix: blocksyncer adapt event param to chain side and payment module added
- #206 feat: support query quota and list read record
- #215 fix: potential attack risks in on-chain storage module
IMPROVEMENT
- #188 refactor: refactor metadata service
- #196 docs: add sp docs
- #197 refactor: rename stonenode, syncer to tasknode, recevier
- #200 docs: refining readme
- #208 docs: add block syncer config
- #209 fix: block syncer db response style
BUGFIX
BUILD
FEATURES
- #169 feat: piece store adds minio storage type
- #172 feat: implement manager module
- #173 feat: add check billing
IMPROVEMENT
- #154 feat: syncer opt with chain data struct
- #156 refactor: implement sp db, remove meta db and job db
- #157 refactor: polish gateway module
- #162 feat: add command for devops and config log
- #165 feat: improve sync piece efficiency
- #171 feat: add localup script
This release includes following features:
- Implement the connection with the greenfield chain, and the upload and download of payload, including basic permission verification.
- Implement the signer service for storage providers to sign the on-chain transactions.
- Implement the communication of HTTP between SPs instead of gRPC.
- #131 feat: add chain client to sp
- #119 feat: implement signer service
- #128 feat: stone node sends piece data to gateway
- #127 feat: implement gateway challenge workflow
- #133 fix: upgrade greenfield version to fix the signing bug
- #130 fix: use env var to get bucket url
IMPROVEMENT
- #65 feat: gateway add verify signature
- #43 feat(uploader): add getAuth interface
- #68 refactor: add jobdb v2 interface, objectID as primary key
- #70 feat: change index from create object hash to object id
- #73 feat(metadb): add sql metadb
- #82 feat(stone_node): supports sending data to different storage provider
- #66 fix: adjust the dispatching strategy of replica and inline data into storage provider
- #69 fix: use multi-dimensional array to send piece data and piece hash
- #101 fix: remove tokens from config and use env vars to load tokens
- #83 chore(sql): polish sql workflow
- #87 chore: add setup-test-env tool
BUILD
- #74 ci: add docker release pipe
- #67 ci: add commit lint, code lint and unit test ci files
- #85 chore: add pull request template
- #105 fix: add release action
This release includes features, mainly:
- Implement the upload and download of payload data and the challenge handler api of piece data;
- Implement the main architecture of greenfield storage provider:
2.1 gateway: the entry point of each sp, parses requests from the client and dispatches them to special service;
2.2 uploader: receives the object's payload data, splits it into segments, and stores them in piece store;
2.3 downloader: handles the user's downloading request and gets object data from the piece store;
2.4 stonehub: works as state machine to handle all background jobs, each job includes several tasks;
2.5 stonenode: works as the execute unit, it watches the stonehub tasks(the smallest unit of a job) and executes them;
2.6 syncer: receives data pieces from primary sp and stores them in the piece store when sp works as a secondary sp; - Implement one-click deployment and one-click running test, which is convenient for developers and testers to experience the gnfd-sp.
- #7 feat(gateway/uploader): add gateway and uploader skeleton
- #16 Add secondary syncer service
- #17 feat: implement of upload payload in stone hub side
- #29 fix: ston node goroutine model
- #38 feat: implement the challenge service
- #9 add service lifecycle module
- #2 add piecestore module
- #18 feat: add job meta orm
- #60 test: add run cases