[Witness] Update – October 2025 | steemd - changed blockchain code

in Steem Dev6 days ago

Some of you may think that things are pretty quiet with me at the moment. That may be true on the platform right now, but there is all the more going on behind the scenes. This is a good time for me to tell you about my current activities here on Steem. After all, it is you who have entrusted me with responsibility for your chain.



steemd

At the moment, I am mainly working on the blockchain code (steemd for short).
There is currently a proposal financed by the community through DAO funds that updates outdated libraries of steemd. This should allow us to build and run the code on newer operating systems in the future. When we want to work on the code, we won't have to deal with outdated, vulnerable and risky libraries. In the best case scenario, we will be able to use more efficient methods in the future.

In my last update, I reported that development had progressed to the point where steemd could be built on Ubuntu 24.04.
Over the last few days and weeks, I took the time to analyse and test part of the code very intensively. The aim was to check that the database created with the new code matched the original code currently in use.

To describe it briefly and as non-technically as possible: I have not succeeded in reading the database created by the blocks of the Steem blockchain outside of the blockchain using various approaches. Steemchiller and I have exchanged ideas very intensively in the witness channel and discussed the various possibilities. Ultimately, we would have to recreate part of the database logic outside of steemd in order to be able to compare the contents for consistency. However, this was not feasible for me in terms of time.

Other approaches were to read samples during the rebuilding of the database and to read using existing API queries, which I have implemented as follows:

Global Dynamic Propoerties Snapshot

steemd can be instructed to output benchmark data every x-th block using the parameter --set-benchmark-interval=x. I have extended this to include the output of the global dynamic properties at this block. If these match down to the last decimal place, this is already a good indication that the database matches.

Querying the node at a defined block

The other approach was to pause the node at a defined block – i.e. after the replay. Although there is already an option that cancels the replay at a specific block, this causes steemd to terminate. This means that no queries can be sent to the node.
I have now added an option --p2p-disable, which stops further synchronisation after the entire blockchain has been replayed. This is achieved by not starting the P2P plugin required for this.
Once the blockchain replay is complete, we can, for example, query the account balances of all accounts at a defined point in time and thus find out whether the values in both database versions are exactly the same.

My changes


My changes in the version currently running by the Witnesses
My changes in the new version

Feel free to test the changes. Complete Docker images for both versions (tags: ub18-v2 and ub24-v2) are available here: https://hub.docker.com/r/moeckisteem/steemd-db-check/tags

What happens next?

The databases are currently being replayed. Unfortunately, this takes at least 5 days per database.

Steem Search on https://moecki.online/

My Full Node on https://api.moecki.online

For fast account recovery set your recovery account to @moecki.recovery.

My Github

Vote here


15.10.2025

Sort:  

Sorry, dass ich der erste Kommentator bin, und dann auch noch mit sowas:

Was du tust, sind m. E. absolut ehrenwerte Wiederbelebungsversuche des begnadeten Reiters am toten Pferd! :-)
Bist du eigentlich auf Discord oder sonstwie erreichbar?
Dann könnte ich meine zynischen Kommentare besser verstecken... (Es ist ja nicht mein Ziel, gegen den STEEM oder Hive zu schießen, sondern letztlich pure Verzweiflung). :-)

Lieber Jaki,

solange es Menschen wie @moecki und @steemchiller gibt ist Steemit besser dran als die von den Oligarchen um Mark Jeftovic versammelte Clique auf hive.

Hive lebt im Grunde von Splinterlands und Leo kannste in die Tonne kloppen, da dort die Betreiber sich ebenfalls die Taschen vollstopfen.

Du weißt ebenso wenig wie jeder andere was die Zukunft bringt.

Steemit ist sicherlich in Asien besser aufgestellt als Hive im sogenannten Wertewesten.

Letzterer befindet sich aus den Dir bekannten Gründen auf dem absteigenden Ast...

Da ist Steemit wesentlich besser aufgestellt.

Beste Grüße

Ich denke, beide Plattformen werden es schwer haben. Hive der Oligarchen wegen, und der STEEM wird von einem anonymen Niemand (dem "Steemit Team") mit seinem Riesenstake kontrolliert, während außerdem User wie @trafalgar mit NULL-Value-Posts, die NULL Interaktion aufweisen, die Trendig-Page beherrschen - von wegen 'Quality-Content' gewinnt.
Überdies merkt man dem Steemit-Interface sein Alter an: oft superlangsam!

Ich würde ja auf eine witklich gut durchdachte HIVE-Fork hoffen..., wo niemand mit early-geminetem Stake startet und es für Downvotes klare Regelungen gibt etc.

Dafür müsste man sowohl fähige Leute wie @moecki oder @steemchiller als auch ein paar Investoren wie @balte oder @stayoutoftherz gewinnen. Ich würde mir dann auch überlegen, vielleicht wieder ein bisschen zu investieren.

Steemit läuft bei mir flüssig wie eh und je.

Die Probleme auf Hive mit den Oligarchen dort sind ungelöst.

Eine Harforck mit Reset des neuen Frontends für alle auf Null wäre sicherlich eine interessante Möglichkeit.

Was für mich viel wichtiger ist, ist Quantenresistenz der Wallet. Denn damit steht und fällt langfristig alles.

Mal sehen welche Chain da eher die Nase vorn hat.

Beste Grüße aus dem kalten herbstlichen Westen unserer Banananrepublik.

 yesterday 

Sorry, dass ich mich erst so spät melde. :-)
Ich hatte einige Dinge im RL zu tun, die mich ein wenig ablenkten. Ich werde auch in den nächsten Tagen nur sporadisch am Rechner sein. Das oben beschriebene Replay dauert zudem noch ein wenig.

Ja, ich bin auch auf Discord zu erreichen. Nick ist derselbe wie auf der Chain.

Ich hab zwar kaum verstanden worum es geht. Schätze aber Expertise und Engagement sehr.👍👍👍

Coin Marketplace

STEEM 0.10
TRX 0.32
JST 0.033
BTC 112099.31
ETH 4015.37
USDT 1.00
SBD 0.63