0Chain Weekly Debrief — May 18th, 2022

Chad Hanson
Zus Network
4 min readMay 18, 2022

--

Happy Wednesday! Hope you are all having a great week so far. This week, we look into continued dev progress, nearing the completion of another major milestone in our progress to mainnet. In addition, we have recently showcased a recent video put together by Sculptex to demonstrate the use of our dStorage video streaming capabilities.

Sculptex Use-Case: Media Streaming Server

Sculptex released a recent video that was shared with the community which showcases his deployment of a media streaming service that leverages 0Chain as the underlying storage mechanism. He previously wrote an article which breaks down what is happening. You can access the video here:

When a video file is uploaded to 0Chain network, it can be streamed via a media player (think like YouTube). The ability to download chunks of the file at the same time offers good speeds and ability to skip around. He is essentially showcasing the capability of using 0Chain as the storage layer for media applications.

To try the media server yourself, click here. https://mediaserver.zcdn.uk/

Development Team Updates

In the past week, the blockchain team has closed 13 PRs and 12 issues within the 0Chain Repo, which builds upon last week’s major progress. With the blockchain team’s recent merging of the Transaction Nonce PR, they were able to shift focus to address the final few remaining tasks on the Miner Reward PR. The team is currently fixing an issue uncovered during systems testing and once that has been fixed, we will see the merging of all Miner Reward related PRs.

Another key PR that was merged over the past week is the challenge table PR, which provides the API for blobbers/validators to get open challenges. Previously, there was an issue during the challenge generation process, which would interfere with blobbers/validators’ ability to complete the challenges. By fixing the underlying issue, the PR was able to successfully pass testing and improve network stability. In correspondence to this, the blobber team is now implementing updates on the blobber network to reflect changes made to the APIs.

Other fixes include benchmark issues and updated conductor tests. The fixes to the benchmark issues include the test being able to auto-populate data into the event database (such as pools, markers) to simulate scenarios which helps expand testing capabilities and reflect PRs that were merged over previous weeks. Our new allocation request PR was approved following internal review and will be merged following the passing of systems testing. When the PR is merged, it will allow us to resolve a few final conflicts on our ALL_BLOBBERS_KEY PR and conduct systems testing. If the PR passes testing, these PRs will be merged in a quick, successive order.

As our team implements new processes and enhances others, our consistent testing helps us identify potential issues. The team began work on two new security issues that were identified. One issue includes the process in which miners verify the responses to challenges and the other is resulted in the tokens being burned due to a rounding error. We are glad that our robust testing has helped us identify these potential threats to minimize issues following our launch.

The Blobber team has closed 6 PRs and 5 issues in the past week. The main issue addressed is the merging of the disk utilization enhancement PR which addresses the problems that could cause the crowding of directories with the concurrent storage of millions of files. By distributing the files among different directories based on its content hash, which helps with the scaling of the network. Another PR was raised which helps limit the number of directories and files an allocation can have in order to avoid a slowing of performance. This is a decisive measure to ensure that that Blobbers will be responsive from mainnet launch. Recommended limits will be determined over the next few weeks that strike a good initial balance between user-demand and performance. Ongoing optimizations in this area will continue after mainnet launch to enable further scaling. Due to the ability to create multiple allocations per wallet, this should only be a minor inconvenience from a user perspective, and the recently added feature of naming of allocations will assist users in organizing their files between multiple allocations. This week, the Blobber team will continue its work on the challenge completion issue while also implementing API changes from the challenge table PR, mentioned above in the blockchain section.

Developer Resources

  • Interested in learning more about building on 0Chain or becoming a service provider? Check out our GitHub for access to repositories. Community ambassador Sculptex has created numerous tutorials to help get you started.
  • Try our BetaNet here! Users can create wallets and allocations, store files, send transactions, and share files.
  • Need help navigating creating wallets, allocations, or joining as a blobber? Check out our documentation page.
  • 0Chain’s API endpoints use simple and intuitive HTTP requests to interact with the blockchain in order to send/retrieve information to and from miners, sharders or blobbers in the active network.

About 0Chain

0Chain is a high-performance decentralized storage network designed to eliminate business threats such as censorship, privacy liability and data breaches. 0Chain helps entities achieve GDPR compliance, localization and tokenization, and monetizes private data sharing.

API| Docs | Telegram | Reddit | Twitter | Forum | GitHub

--

--