DEV Community

Cover image for rippled 1.9.2: Bug Fixes & XLS-20 Amendment Voting
Nik Bougalis for RippleX Developers

Posted on

rippled 1.9.2: Bug Fixes & XLS-20 Amendment Voting

Greetings πŸ––

Version 1.9.2 of rippled (the reference implementation of
the XRPL protocol) was just released with several key changes, including fixes for bugs identified with the initial implementation of the XLS-20 spec that introduces support for Non Fungible Tokens (NFTs).

The XRPL validator community can now confidently vote on
XLS-20β€”Ripple's proposed standard to bring native NFTs to the XRP Ledger (XRPL).

New in 1.9.2

The 1.9.2 release aims to correct or rectify issues that developers and server operators identified with earlier releases, such as:

  • A race condition in the shard code that could result in a server crash. This issue would only affect servers configured with sharding enabled, which is currently experimental and not recommended for production.
  • A race condition while handling an operator-requested shutdown request could result in the server stalling and hanging instead of shutting down.
  • In rare cases, an exception would be thrown from a code path that did not install an exception handler, abruptly shutting down and potentially resulting in database corruption.
  • An incorrect SQL query during startup could result in an apparent failure to persist amendment votes across restarts, even though the vote was properly persisted.
  • A failure to properly sanitize certain JSON inputs early could result in unexpected errors in code that made assumptions about the data contained in the JSON object.
  • Although extremely unlikely to manifest in practice, a bug in the low-level spinlock code could cause the same SHAMapInnerNode child list to lock under some circumstances repeatedly.
  • Improper error checking could allow for the creation of an offer to acquire an NFT that would see the user offering the NFT for sale to pay the user accepting the offer; this fix introduces a fix amendment, fixNFTokenNegOffer.
  • Improper range checking during parsing of HTTP and HTTPS URLs could fail to properly detect invalid port numbers.
  • Failure to honor the network_id configuration parameter.

XLS-20 Voting

The XRP Ledger uses an on-ledger voting mechanism to allow network
participants to vote on amendments to the protocol.

One such amendment is NonFungibleTokensV1 which is being actively voted on. Unfortunately, the discovery of bugs in that amendment
has necessitated the introduction of two fix amendments: fixNFTokenDirV1 and fixNFTokenNegOffer, complicating the path toward activation of the XLS-20 standard as the fixes need to activate before the NonFungibleTokensV1 amendment.

While the maintainers of the software take no position on how operators should vote when it comes to the adoption of the XLS-20 standard, the 1.9.2 release introduces a new amendment, NonFungibleTokensV1_1, which combines and supersedes the existing NonFungibleTokensV1, fixNFTokenDirV1 and fixNFTokenNegOffer amendments, simplifying voting and reducing the possibility of accidentally activating amendments out of order. The NonFungibleTokensV1, fixNFTokenDirV1 and fixNFTokenNegOffer amendments continue to be available and open for voting but should be considered deprecated.

Building for the XLS-20 Community

As we previously shared, Ripple has conducted testing and configured its validators to vote in support of activation of XLS-20. Ripple's validators will begin
voting for NonFungibleTokensV1_1 and against the NonFungibleTokensV1, fixNFTokenDirV1 and fixNFTokenNegOffer once upgraded to the 1.9.2 release.

We are confident in the potential XLS-20 can bring to several projects and businesses in the XRPL community. Some of the many projects dependent on native NFT support include:

If activated, XLS-20 would bring native NFT support to the XRPL, providing developers and community projects access to NFT minting, trading and burning functionality. XLS-20 also supports advanced features like automatic royalties.

XRP Ledger server operators are encouraged to upgrade to version 1.9.2 within two weeks to ensure service continuity. The exact time that protocol changes take effect depends on the voting decisions of the decentralized network.




As with all proposed amendments, Ripple recommends that XRPL validators do their due diligence before voting. Visit my previous blog to learn more about the XRP Ledger's amendment process.

Top comments (0)