0Chain Weekly Debrief — August 17, 2022

Tiago Souza
Zus Network

--

Happy Wednesday! Thanks to everyone who participated in our referral campaign for the storage app, which ended on this Monday. In the last week, the dev team mainly focused on newly encountered bugs that caused the chain to be stuck, and worked on optimizing the load tests. Meanwhile, they fixed several issues on blobber and gosdk that were exposed by load tests. Let’s dive into this week’s update!

Blockchain Team

The blockchain team worked on two different tasks. One for supporting the development of the Apps, and fixing bugs and optimizing load tests. Since a lot of effort was needed for fixing the chain stuck bug and load tests, not many PRs were closed, as they still need to be reviewed. Therefore, only 4 PRs were closed in the 0Chain repo while 9 new PRs are currently being reviewed.

The team fixed the chain stuck issue by ‘state hash mismatch’ error. For this, they went through the smart contracts packages of minersc, storagesc, zncsc, faucetsc, and related common packages to locate all the places that could have this error. They fixed all of the places where the APIs should return but didn’t. Also, they fixed incorrect async block and round storing (when finalizing blocks), which now should be saved to db synchronously instead. In addition, they fixed potential goroutine leaks. All of these issues were addressed to improve network stability and ensure that the network features will be highly performant upon launch.

Moreover, they fixed an issue with the timestamp of write markers and transactions, which could produce the same time stamp, which previously was treated as an error. Also, they enhanced open challenges API endpoint by querying with more accurate time ranges, updated /collected_rewards to support start and end-date as query parameters, and added a special parameter called data-points to specify the number of data points in the output.

New PRs that are currently being reviewed and planned to be submitted by next week:
1) support validators staking
2) get blobbers by ranks
3) api endpoints refactor

Blobber & gosdk team

The Blobber & gosdk team closed 11 PRs in the blobber and gosdk repos

The team fixed:
1) the open challenge pass rate low issue, improving the challenge methodology to work more efficiently.

2) a blobber dir delete issue caused by LIKE statement.

3) a root path renaming issue, the root path / dir should not be allowed to be named.

4) a foreign key constraint error while deleting related commit_meta_txns.

5) a signature verification issue on wasm.

6) a renaming issue that was detected during load tests.

In addition, they merged the code in blobber repo to support listing recent add refs, which will be used by clients to list recent added files. They merged the mobile sdk into staging. Lastly, they exposed createDir API on wasm.

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

--

--