Pierwszą rzeczą, którą obwiniłem, był gaz.

To nie był gaz.

Dwie transakcje. Różne instrukcje. Obie sięgały po to samo konto stanowe wewnątrz maszyny wirtualnej Solana Fogo. Myślałem, że równoległe wykonanie SVM oznacza, że one po prostu... miną się. Przesuną się przez oddzielne pasy. Cokolwiek.

Nie minęły się.

Harmonogram transakcji SVM nie utknął. To jest ta część, która mnie zmyliła. Rozwiązał obie klarownie. Dzienniki były ciche. Zbyt ciche. Spalanie jednostek obliczeniowych w budżecie. Żadne czerwone flagi. Tylko blokowanie konta robiące swoje ciche, deterministyczne rzeczy.

„Równolegle.” Nie. Nie przez.

W wewnętrznej, opartej na slotach, egzekucji Fogo, wzorce dostępu się nie kłócą. Decydują. Kadencja bloku 40 ms nie poszerzyła się. Nigdy się nie poszerza. Jedna instrukcja chwyciła konto. Druga czekała. Nie nieudana. Czekała.

Co jest gorsze.

Zegar napędzany PoH kontynuował sekwencjonowanie. Deterministyczny harmonogram lidera Fogo przesuwał się do przodu. Slot N został rozszerzony. Następnie N+1. Moja druga transakcja wylądowała, technicznie, ale wewnątrz następnego okna włączenia. Głosowanie Tower BFT nie mrugnęło.

Przepisałem strukturę konta. Najpierw podzieliłem według użytkownika. Nadal kontestacja. Patrzyłem na to dłużej, niż powinienem. Następnie według typu akcji. Czystsze. Nie eleganckie. Po prostu mniej kolizji.

Równoległe aktualizacje stanu pozostały równoległe, aż trafiły na to konto. Potem już nie były. Fogo ( @Fogo Official ) nie obchodziło, że układ wyglądał elegancko. Konto było zablokowane. To wystarczyło.

Prawie napisałem „wysoka wydajność.” Usunąłem to.

Slot nie wydawał się szybki. Wydawał się ciasny.

Na Fogo, harmonogram nie zawodzi głośno. Przesuwa cię o jeden slot dalej i kontynuuje.

Slot N+1 już się rozszerzał, zanim przekonałem siebie, że wszystko jest w porządku.

Nie było.

Slot N+2 już się budował.

Nadal patrzyłem na ślad.

#Fogo $FOGO #fogo