Open AndrejMitrovic opened 4 years ago
Hey, sorry I missed this when you first opened it.
To answer your question: I have heard a number of times that Stellar closes a new ledger every five seconds or so. However, when I've gone asking how this is possible, based on the results I've seen with this tool (which match your experience - sometimes fast, sometimes quite slow), I've never gotten a clear answer, even from senior people within the Stellar project.
Of course it's possible that there's some error in my implementation and a correct implementation never encounters very slow ledgers. But considering that probabilistic outcomes are at the heart of the protocol, occasionally slow ledgers seem unavoidable.
This remains a mystery to me that I'd like to understand better. As such, if you don't mind, I'd like to keep this issue open.
Sure! Thanks a lot for reaching back.
My experience is similar to yours. The last time I asked a protocol question in their newsgroups they just outright deleted my post. https://stellar.stackexchange.com/ is a little better, but questions often go unanswered there too.
I haven't looked deeply into your implementation yet. I'm quite familiar with the nomination protocol in SCP, but I'm still researching the Balloting protocol. If I figure out what's different about their implementation and yours, I'll let you know!
By the way, your blog post on https://medium.com/interstellar/understanding-the-stellar-consensus-protocol-423409aad32e is fantastic! Thanks a lot for the hard work on making a digestible write-up!
As far as I understand it Stellar produces many blocks per minute, usually closing a ledger every 5-6 seconds.
I've tried to use the
lunch.go
script with a quorum config with around 36 nodes, the first slot externalizes fast, but slot 2 takes a very long time (over a minute).Here's the quorum config I've used: https://gist.github.com/AndrejMitrovic/f59a0e47e6a0c1fe8be74e690ff60eb6