Remove /entries/txIds endpoint and entry_seqno_index indexer#373
Remove /entries/txIds endpoint and entry_seqno_index indexer#373
Conversation
Co-authored-by: ivarprudnikov <1052642+ivarprudnikov@users.noreply.github.com>
|
This is a positive change, workloads that want to audit substantial portions of the ledger are better served by exposing static ledger files for download. It makes more sense to cache and serve those at scale than to do with inside the TS TEE. As pointed out in the PR description, governance transactions are only a small portion of a typical ledger, and so skipping them is not a major imposition on an auditing entity. |
|
Unfortunately this existing api is tied to the existing rest api spec we have https://github.com/microsoft/azure-rest-api-specs_2024-03-01/blob/main/specification/confidentialledger/Microsoft.CodeTransparency/entries.tsp#L59 Need to create a new simpler version and deprecate these methods. |
|
It may be possible to create an intermediate version without the index, and which just uses the regular historical query flow, but I am not sure if it's worth doing. |
The
entry_seqno_index(SeqnosForValue_Bucketed<EntryTable>) maintained an ever-growing in-memory index to power/entries/txIds, trading memory and first-response latency on new nodes for skipping deserialization of governance transactions—a premature optimization given governance is rarely a significant portion of ledger volume.C++
EntrySeqnoIndexingStrategytypedef,entry_seqno_indexmember, and its initialization/installation/entries/txIdsGET endpoint and all associated logicGetEntriesTransactionIdsfromcall_types.hindexingnamespace constants (SEQNOS_PER_BUCKET,MAX_BUCKETS) andIndexingInProgressRetryLatererror fromconstants.h<ccf/indexing/strategies/seqnos_by_key_bucketed.h>include and now-unusedget_tx_statushelperPython / CLI
Client.enumerate_statements()and its unused imports (Iterable,urlencode)retrieve_signed_claims.pyCLI command (scitt retrieve) which depended onenumerate_statementsretrieve_signed_claimsfromcli/main.pyTests
test_enumerate_statementsfromtest/test_historical.pyOriginal prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.