nx_search_inverted_persist.nx
buildroot/runtime/nx_search_inverted_persist.nx
about
nx_search_inverted_persist.nx -- DISK PERSISTENCE for the inverted index (the S-class STORAGE rung the team
flagged as "queued": nx_search_inverted holds the index in memory only). This ships it: save the built index
to disk + load it back, so the team builds the index ONCE over the NAS corpus and queries it forever without
re-tokenizing 81 GB. Composes nx_search_inverted (brings syscalls.nx == nx_syscalls.nx, no clash). The design
is clean because vocab slots store OFFSETS into the postings pool (not pointers), so load needs NO relocation:
read the file as one buffer and point the index struct INTO it. license_tier: ORIGINAL
dependencies 1 imports · 23 importers
diagram shows first 10 each side; +0 more imports, +13 more importers in the complete lists below.
imports: nx_search_inverted.nx
imported by: nx_docportal_search_gate.nxnx_gallery_serve.nxnx_lib_index.nxnx_library_harvest.nxnx_library_harvest_v2.nxnx_onsite_index.nxnx_onsite_search.nxnx_onsite_search_gate.nxnx_research_cycle.nxnx_research_freshness.nxnx_research_gaps.nxnx_research_gate.nxnx_research_grow.nxnx_research_grow_full.nxnx_research_miner.nxnx_research_search.nxnx_research_serve.nxnx_search_cli.nxnx_search_federated.nxnx_search_inverted_persist_test.nxnx_search_register.nxnx_site_search.nxnx_wiki_answer.nx
structs
| none |
consts
| 9 | const NX_INVP_MAGIC: i64 = 336659591510 // "NXINV" -- format sentinel, rejects foreign/corrupt files |
| 10 | const NX_INVP_HDR_BYTES: i64 = 40 // 5 x i64: magic, n_rows, vocab_capacity, vocab_occupied, postings_used |
functions
| 13 | func nx_invp_write_all(fd: i64, buf: *u8, n: i64) -> i64 called by 1: nx_inv_save |
| 24 | func nx_inv_save(idx: *NxInvIndex, path: *u8) -> i64 called by 9: mainnx_lib_index_buildmainmainmaing_build_site+3 calls 2: sys_openat_wrnx_invp_write_all |
| 46 | func nx_inv_load(path: *u8) -> *NxInvIndex |