Happy November! With all the talks regarding Twitter, influencers have started to wonder about crypto and Web3 integration. With all that is to come, it is important to emphasize the need for Decentralized Storage vs Centralized Storage to form a solid foundation for Web3. Included in this weekly update are some new tools for creating an offline wallet.
Load and Chaos Testing
Now let’s dive into this week’s update! Last week the team conducted several rounds of load and chaos testing and found only a few issues. In addition, they continue working on the snapshot PR to add historical event data support for the frontend team. Meanwhile, the team finished the benchmark tests work in branch fix/benchmarks, which still require unit tests and system test fixes to finalize the PR. However, core changes and tests have already been done and will close in the following weeks. Also, there were a few updates on gosdk/zwalletcli/zboxcli, including a zwallet transaction fee support and a new create-wallet command support. Finally, the team closed PRs and issues, check below for more details:
Save blobbers in partitions: Benchmark was optimized for creating and updating new allocations. The data contained in one of the allocations was saved in a number of selected blobbers. Previously, each time an allocation was created, they would have to get blobbers from MPT and update the blobbers’ data. Data such as the capacity and offers, and then save them back to the MPT one by one. On the other hand, with partitions, if all of the blobbers are located in the same partition, it would only require 1 MPT to get action and 1 MPT to set action. This will improve the overall performance.
Allocation Smart Contract
Apart from the changes from the blobber partitions, the team also optimized the update allocation smart contract. This ensures the allocation is not updated immediately when the contract is called. Instead, the update request will be checked. Blobbers are only when it is needed to resize (increase the allocation size) or to update blobber terms. With this change, all other updates, such as adding new blobbers to the allocation, and extending the allocation duration, will not need to load and update all the blobbers every time.
In addition, the team fixed conductor tests, incorrect magic block settings on conductor tests, and a gosdk crash issue, which was due to the bulkBarrierPreWrite unaligned arguments issue. Also, the team fixed zboxcli sync issues, added an authorizer to the token bridge smart contract, a new CLI command create-wallet to create an offline wallet, and an API to get the estimated transaction fees in any given transaction.
Furthermore, they added offline wallet creation to the SDK and additional support to transaction fees on client ends. Lastly, they exposed GetPublicEncryptionKey to mobile SDK and added macOS SDK build github workflow.
Hope you enjoyed the weekly update!
Züs is a high-performance storage platform that powers limitless applications. It’s a new way to earn passive income from storage.