“Pending” có thực sự là một sự thật trên toàn mạng không?
Một ví có thể gắn nhãn cho một giao dịch Dusk là “pending” trong khi một node khác hoàn toàn không có mục nhập tương ứng trong mempool.
Điều đó không nhất thiết là mâu thuẫn. Nó xuất phát từ cách Dusk xử lý các giao dịch trước khi chúng trở thành trạng thái sổ cái.
Mỗi peer thực hiện các kiểm tra chấp nhận riêng và duy trì mempool riêng. Vì vậy, truy vấn mempoolTxs của Dusk sẽ hiển thị mempool thực của node đang được hỏi—không phải một hàng đợi dùng chung trên toàn mạng mà mọi peer đều chia sẻ.
Cách xử lý ở thời Boreas-era Moonlight còn khiến điều này kém trực quan hơn. Một giao dịch hợp lệ có nonce nằm phía trước chuỗi hiện tại của tài khoản có thể bị hoãn lại trong lúc các nonce bị thiếu chưa đến. Trong khoảng thời gian đó, nó nằm ngoài mempool “thực” mà node nhìn thấy. Vì thế, ngay cả node đã nhận được giao dịch cũng có thể chưa hiển thị giao dịch đó trong mempoolTxs.
Việc hết hạn lại là một chiều kích cục bộ khác: đó là chính sách của node, chứ không phải là một thời hạn được mã hóa trực tiếp trong chính giao dịch.
Điều này làm thay đổi cách tôi đọc từ “pending”. Trước khi đạt được đồng thuận, Dusk không cung cấp một trạng thái giao dịch toàn cầu duy nhất, mang tính “authoritative” để mọi người có thể quan sát. Các node khác nhau có thể hợp lệ khi nắm giữ những thông tin khác nhau về cùng một giao dịch.
Do đó, trạng thái của một ví là một báo cáo từ một điểm quan sát, chứ không phải là tuyên bố rằng mạng đã đồng ý về một dữ kiện trung gian dùng chung nào đó.
Đồng thuận là nơi những quan điểm cục bộ bị phân mảnh bắt đầu chuyển thành lịch sử sổ cái chung.
@Dusk $DUSK #dusk
Một ví có thể gắn nhãn cho một giao dịch Dusk là “pending” trong khi một node khác hoàn toàn không có mục nhập tương ứng trong mempool.
Điều đó không nhất thiết là mâu thuẫn. Nó xuất phát từ cách Dusk xử lý các giao dịch trước khi chúng trở thành trạng thái sổ cái.
Mỗi peer thực hiện các kiểm tra chấp nhận riêng và duy trì mempool riêng. Vì vậy, truy vấn mempoolTxs của Dusk sẽ hiển thị mempool thực của node đang được hỏi—không phải một hàng đợi dùng chung trên toàn mạng mà mọi peer đều chia sẻ.
Cách xử lý ở thời Boreas-era Moonlight còn khiến điều này kém trực quan hơn. Một giao dịch hợp lệ có nonce nằm phía trước chuỗi hiện tại của tài khoản có thể bị hoãn lại trong lúc các nonce bị thiếu chưa đến. Trong khoảng thời gian đó, nó nằm ngoài mempool “thực” mà node nhìn thấy. Vì thế, ngay cả node đã nhận được giao dịch cũng có thể chưa hiển thị giao dịch đó trong mempoolTxs.
Việc hết hạn lại là một chiều kích cục bộ khác: đó là chính sách của node, chứ không phải là một thời hạn được mã hóa trực tiếp trong chính giao dịch.
Điều này làm thay đổi cách tôi đọc từ “pending”. Trước khi đạt được đồng thuận, Dusk không cung cấp một trạng thái giao dịch toàn cầu duy nhất, mang tính “authoritative” để mọi người có thể quan sát. Các node khác nhau có thể hợp lệ khi nắm giữ những thông tin khác nhau về cùng một giao dịch.
Do đó, trạng thái của một ví là một báo cáo từ một điểm quan sát, chứ không phải là tuyên bố rằng mạng đã đồng ý về một dữ kiện trung gian dùng chung nào đó.
Đồng thuận là nơi những quan điểm cục bộ bị phân mảnh bắt đầu chuyển thành lịch sử sổ cái chung.
@Dusk $DUSK #dusk
