Engineering Update #2

News & Updates
Yuval Binder
Dec 11, 2022

At Lava, we believe in transparency and sharing our progress with the community. That’s why we host monthly Engineering Progress Calls, where we share updates on the development of Lava Network.

In our most recent call, which included an open Q&A with our CTO, Chief Architect Officer, and Blockchain Team Leader, we introduced a new format, discussing:

  • An exciting new feature — WebSocket Subscriptions
  • A feature in development — the Decentralized Access (Daccess) SDK
  • A challenge we faced this month — Consensus Failure

New Feature — WSS Subscriptions

Announcing the availability of WebSocket Subscriptions on all of our supported chains! This allows developers and app clients to establish a persistent connection with nodes, and subscribe to WebSocket methods on the chains which support this API. We know this is a popular feature among developers and can save computation by enabling you to query specific information when a new block arrives.

Lava is starting with JSON-RPC, but the network will also provide support for other blockchain APIs, including WSS and gRPC, depending on the chain.

Feature in Development — Decentralized Access SDK

We are also currently working on an SDK for decentralized access to the network, removing the need for developers to use the Lava Gateway in production-grade environments. This will be seamless to use within dapps and will be fully customizable and open source.

Lava Network runs as an open market for blockchain APIs, where node providers are held accountable on-chain for speed, uptime and data integrity. To achieve the highest level of service, there must be permissionless access to the market — pushing innovation and competition among providers. Enabling decentralized access through the SDK is a core part of this vision.

Challenge — Consensus Failure

One of the challenges we faced recently involved a consensus failure, due to an error in our on-chain fraud detection mechanism. One part of this mechanism involves the generation of a list of node providers that vote to determine whether a certain node responded with incorrect data (whether through fault or malice).

This list caused a consensus mismatch between the validators, and led to a chain halt. We worked closely with the validators on our Private Testnet to quickly deploy a new state with the fixed binary using a snapshot.

Even if this issue occurred on Mainnet, Lava’s off-chain communication and lazy blockchain design enables providers to keep serving applications while the chain is halted, and to claim their rewards retroactively.

It’s important to emphasize that users weren’t impacted by this, and that the goal of our Testnet is to battle-test and prepare our network for Mainnet. By simulating various scenarios, we are improving the strength of the network, and training our team to quickly find and resolve issues.

As a reminder, the protocol and appchain will be completely open-source. As we progress, our engineering team will be supported by the community in developing Lava — accountable and decentralized infrastructure for Web3.

About Lava

Lava Network powers accountable and decentralized access to web3. Users fetch data about the state of any blockchain, through an open market of independent RPC node provider. Each node provider is held accountable on-chain for fast responses, high uptime and data freshness.

Lava makes it easy for developers to build permissionless, private and reliable apps on web3, without compromise.