🔍 Bên trong @Rayls Axyl: Điều gì xảy ra khi tính toán song song state root thất bại?
Thực thi song song có thể cải thiện hiệu năng, nhưng điều gì xảy ra khi quá trình tính toán state root song song thất bại trong lúc tạo block?
Tôi đã xem xét mã thực thi của Rayls Axyl và phát hiện ba luồng riêng biệt để tính state root.
⚡ 1. Tính toán thưa
Axyl bắt đầu tính toán sparse trie trong khi các giao dịch EVM đang được thực thi. Nhờ vậy, hai thao tác có thể diễn ra đồng thời. Khi tính toán song song thành công, Axyl sử dụng state root thu được cùng các cập nhật trie.
🔄 2. Chuyển sang xử lý tuần tự
Nếu quá trình tính toán song song trả về lỗi, Axyl thử tính lại state root bằng phương thức tuần tự. Mã cũng chuyển panic xảy ra bên trong thao tác sparse root được bảo vệ thành kết quả lỗi, nhờ đó bên gọi có thể đi vào nhánh dự phòng.
🛠️ 3. Tính toán tuần tự trực tiếp
Nếu không thể thiết lập tác vụ song song, Axyl đi theo một lộ trình khác. Vì hàm sparse root không khả dụng, state root được tính trực tiếp bằng phương thức tuần tự.
Phát hiện quan trọng là lỗi thiết lập tác vụ và lỗi tính toán được xử lý qua các nhánh khác nhau, dù cả hai đều có thể dẫn đến việc tính state root tuần tự.
Sau khi chọn state root, Axyl chuyển giá trị này vào quá trình tạo block. Mã cũng ghi lại trong log lộ trình tính toán đã chọn.
Một hạn chế quan trọng là chuyển sang phương án dự phòng không đảm bảo khôi phục được sau mọi lỗi. Nếu phép tính tuần tự cũng trả về lỗi, lỗi đó sẽ được chuyển tiếp thay vì bị âm thầm bỏ qua.
Những chi tiết triển khai này cho thấy cách Axyl kết nối tính toán song song, xử lý lỗi, khôi phục bằng phương pháp tuần tự và tạo block.
Thực thi song song có thể cải thiện hiệu năng, nhưng điều gì xảy ra khi quá trình tính toán state root song song thất bại trong lúc tạo block?
Tôi đã xem xét mã thực thi của Rayls Axyl và phát hiện ba luồng riêng biệt để tính state root.
⚡ 1. Tính toán thưa
Axyl bắt đầu tính toán sparse trie trong khi các giao dịch EVM đang được thực thi. Nhờ vậy, hai thao tác có thể diễn ra đồng thời. Khi tính toán song song thành công, Axyl sử dụng state root thu được cùng các cập nhật trie.
🔄 2. Chuyển sang xử lý tuần tự
Nếu quá trình tính toán song song trả về lỗi, Axyl thử tính lại state root bằng phương thức tuần tự. Mã cũng chuyển panic xảy ra bên trong thao tác sparse root được bảo vệ thành kết quả lỗi, nhờ đó bên gọi có thể đi vào nhánh dự phòng.
🛠️ 3. Tính toán tuần tự trực tiếp
Nếu không thể thiết lập tác vụ song song, Axyl đi theo một lộ trình khác. Vì hàm sparse root không khả dụng, state root được tính trực tiếp bằng phương thức tuần tự.
Phát hiện quan trọng là lỗi thiết lập tác vụ và lỗi tính toán được xử lý qua các nhánh khác nhau, dù cả hai đều có thể dẫn đến việc tính state root tuần tự.
Sau khi chọn state root, Axyl chuyển giá trị này vào quá trình tạo block. Mã cũng ghi lại trong log lộ trình tính toán đã chọn.
Một hạn chế quan trọng là chuyển sang phương án dự phòng không đảm bảo khôi phục được sau mọi lỗi. Nếu phép tính tuần tự cũng trả về lỗi, lỗi đó sẽ được chuyển tiếp thay vì bị âm thầm bỏ qua.
Những chi tiết triển khai này cho thấy cách Axyl kết nối tính toán song song, xử lý lỗi, khôi phục bằng phương pháp tuần tự và tạo block.
