Check if XT (v1) Node is "Stale" (not caught up with latest transactions) while Querying I have an XT Node running as an ECS Instance which is populated through a Kafka Transaction Log. However when this node restarts i.e. a new instance of it is created, it is initially catching up on Transactions so returns “stale” date on reads (writes timeout since other transactions are being executed). An example would be I have an API that checks for the existence of document A for user 1. When I create the document A for user 1, its written to the transaction log and indexed. So the XT node is able to return the document on reads. However when the node restarts, the transaction to create document A for user 1 might still not be performed, so when the API queries XT it would get an “empty” search result back indicating that there is no such document A for user:1 and the API would return an inaccurate value. So was wondering what might be possible mitigations to the above? One mitigation would be if while querying for data I could check that the node is “caught up” (check if a certain transaction has been executed, or check number of transactions waiting to be executed), so was wondering if checking for data freshness while querying data is possible?
You can compare https://v1-docs.xtdb.com/clients/1.24.3/clojure/#_latest_completed_tx and latest-submitted