Optimization proposal from Sculptex
- Vorherrschende Sprache
- Go
- Sterne
- 28
- Forks
- 23
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
https://discord.com/channels/992566329632641056/1045060754103078933/1373235805459316816
Quotes from the discord message from Sculptex:
I have an app that uses the cli tools on the back end to post transactions to the Blockchain (Solana + Züs). Now the miner Active Set is much smaller, just a small number of inactive miners has a more dramatic effect on tx times.
My understanding is that each tx is sent to a random subset of miners. If inoperative miners are included in this subset, then there is a 30s timeout experienced. This can clearly and consistently be seen, the times for cli tx commands to complete consistently falls in the range around 5-7 seconds, 35-37 seconds or even 65-67 seconds. This shows instances of timeouts. The 5+ odd seconds is consistent with a minimum number of blocks passing to ensure finalization which is fine, it's the clear stepping of additional 30 seconds that is a problem.
The simple fix is to reduce the default timeout for miner response in the order of a few seconds max, this way the tx will be retried much quicker with a different set of miners.
This will result in a much more consistent UX.
A different approach that I have had success with is to curate the Active Set list of miners to only include ones that are recently active, so instead of using mainnet/dns/network that returns the entire Active Set, you would have a service running that excludes any miners that are currently inactive, such as active/dns/network.


Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Untersuchen Sie die Transaktionssendelogik des CLI-Tools, wahrscheinlich im GoSDK, um herauszufinden, wo Minersubsets ausgewählt und Timeouts gesetzt werden. Das Issue erwähnt, dass das Standard-Timeout für Minerantworten reduziert und möglicherweise der Active Set kuratiert werden soll. Beginnen Sie mit der Untersuchung von Netzwerkaufruffunktionen und Timeout-Konfigurationen. Das Testen von Änderungen erfordert ein Verständnis des Transaktionsflusses und möglicherweise den Aufbau einer Testumgebung, um Minerantworten zu simulieren.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- go, shell
- Bereich
- backend, cli, performance
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100