Nomadic Labs
Nomadic Labs
An indexer for Tezos

We are happy to announce that the indexer for Tezos we have been working on is ready for beta-testing and available here.

But first…

What is an indexer, and what is it useful for?

Mainly, indexers fill a void by providing information that’s not directly available from the node’s RPC interface. But then why don’t nodes provide these RPCs in the first place? That’s simply because when you design and implement your node, you want to provide just what is necessary, focus on what’s most important, in order to reduce the possible sources of errors or bugs or security issues. Also, it’s not really a node’s job to provide all information that users can just deduct or derive from what it does provide.

However, some information just cannot be rapidly deducted from the combination of a reasonable number of RPCs to the node. For instance, if you want the ten latest operations done by a baker, you don’t want to scan the list of transactions until you find ten of them, especially if there’s fewer than ten, since in that case it would make you go up to the genesis block! Instead, you want to have an index of all the transactions done by that baker in a database that’s both easy to access and fast.

Wallets, DApps (decentralized applications, often blockchain-enabled websites), and block explorers are the main users of indexers.

Some technical details about our indexer for Tezos

The code of the indexer for Tezos we are presenting here is a refactoring of Mezos, which is the middleware used by the wallets developed by the Nomadic Labs mobile team. It already has been used extensively and developed in the last 12 months, and its design is fairly stable.

However there have been quite a few changes, going from Mezos to this indexer and here are some of them:

  • For bootstrapping, instead of having to run 4+3=7 slightly different versions of Mezos, you need to run just a single version of this indexer: it handles the 4 different protocols and the 3 protocol transition blocks. That applies to Mainnet only. Other networks are not supported at all for the time being (it wouldn’t be difficult, it just hasn’t been given a priority yet).
  • Mezos uses TzScan to get the snapshot blocks. However this indexer doesn’t use TzScan at all, it directly implements that part so we could break free from some closed source code.

Location

You can find it at https://gitlab.com/nomadic-labs/tezos-indexer/, and if you want to play with it, start by reading the README.

Have fun! :)


Meanwhile at Nomadic Labs #3

Another update on the many projects we have been busy working on. Most of the following topics will be subject of more in-depth posts of their own. Protocol The consensus team is finishing their analysis of selfish baking on Emmy+ and tweaking the constants of the protocol accordingly. At the same time work on our version of Tendermint is progressing to the point of having a proof of concept protocol to play with. The protocol team has been steadily reviewing and testing...

Read More
How to write a Tezos protocol

A Tezos node is parameterized by a software component called an economic protocol (or protocol for short). Different protocol implementations can be used to implement different types of blockchains. This is the first post of a tutorial series on how to implement such a protocol. We will see how to write, compile, register, activate and use an extremely simple protocol. By doing so, we will also start to explore the interface between the protocol and the node (more specifically the shell component of...

Read More
Emmy+: an improved consensus algorithm

Underlying the Tezos network is a consensus algorithm, which, for the ease of reference, we will call Emmy. Consensus ensures that participants agree on the same blockchain and on its state. The ideas behind Emmy are described in the white paper and the specifics to its implementation can be found in the documentation. We recall that Emmy is a PoS based consensus with a use of endorsements to speed-up confirmation times and reduce...

Read More
Release of Mainnet May

Today we are proud to announce a new release of the Tezos node and client. The main features present in this release are: node support for snapshots (boot and synchronize a node in minutes), node support for new history modes (not everyone needs to be an archive), client integration for a multi-signature contract. Remember that besides major features there are always a myriad of smaller improvements, have a look at the changelog. We encourage bakers to switch to history mode “full” using a snapshot before the activation of...

Read More
Athens on the testchain

The quorum for the second voting phase has been reached, with a supermajority of Yays! This means that the voting procedure can proceed to its third stage: the test chain for Athens is going to be launched soon, approximately Friday April 12th. To accompany that, we just released a new version of the Tezos node and its baking daemons. This release includes many improvements, most notably a new --enable-testchain option. Users who want to participate in the test chain should upgrade...

Read More
Meanwhile at Nomadic Labs #2

The last few weeks have been pretty intense at Nomadic with the preparation of the first community voted upgrade! The team has been working hard on some special future improvements to Tezos… Improvements to the consensus layer Tezos has the unique ability to amend itself which allows us to propose state of the art research to the network at any time. This is not a far fetched ideal and will happen sooner rather than later in a series of new efforts...

Read More
Athens: Second Voting Period

As we approach the completion of the first active voting period, the proposal period, we would like to describe what’s to come during the second voting period. The first voting period saw the Athens protocols injection and bakers upvoted Athens A and/or Athens B, with Athens A, the most popular proposal, promoted for the second voting phase: the test voting period. In this new period, participants are asked to vote on whether to advance Athens A to the next stage: the...

Read More
Athens: Proposals Injected!

Today marks an important milestone for Tezos. We just triggered the beginning of the first on-chain vote for self amendment. This process could end in the successful migration from current protocol alpha to Athens in about three months, if the participants decide so. As advertised in the last meanwhile at Nomadic and as detailed in our previous post, we injected the hashes of two proposals. Both include the same enhancements except for one: the decreased amount in the number of tokens needed to...

Read More
Athens: Our Proposals for the First Voted Amendment

This blog post is a preview of Athens: our protocol proposal for the first voted upgrade of Tezos. As announced in the last meanwhile at Nomadic, we shall propose two upgrades: one lowers the roll size to 8,000 tez, the other leaves it unchanged at 10,000 tez. Both alternatives will include an increase of the gas limit. The hashes of both versions will be proposed on mainnet later this week, now that a new proposal period has begun. Later this week, we will publish a...

Read More
  • 1
  • 2

Receive Updates

ATOM

Contacts