Stellar Index v0.47.2
[v0.47.2] — 2026-08-28
Tested against Stellar Protocol 28.
Fixed
-
/v1/assetsstill 500'd after v0.47.1 — the fix had addressed one
column, not the class. v0.47.1 COALESCEdslug; production moved
straight on tocode:before: Scan error on column index 0, name "slug" after: Scan error on column index 2, name "code"catalogue_assets' Soroban arm suppliesslug,codeAND
issuer_g_strkeyas NULL — a contract asset has no issuer account and
no SEP-1 code — andAssetRowtyped all three as plainstring. Any
one of them fails the WHOLE request, not just its row. The v0.47.1
test passed throughout, because it asserted on the SQL text for the
single column that had been noticed; a test written from a symptom can
only confirm that symptom.Now fixed at the scan, where the class lives:
codeand
issuer_g_strkeyscan throughsql.NullStringto"", andslug
does too with a fallback toasset_idthat mirrors its SQL COALESCE.
Empty string rather than the contract id for code/issuer, because a
Soroban asset genuinely has neither and substituting an id would state
something false; the wire is unaffected either way (codeis
omitempty, andissueris guarded by a non-empty check before its
pointer is taken).The remaining Soroban-supplied columns were checked rather than
assumed:first_seen_ledger,last_seen_ledgerandevent_countare
NOT NULLindiscovered_assets, with 0 NULLs across the 60
qualifying rows. That is the complete set.The new test drives
scanAssetRowthrough a scanner reproducing
database/sql's actual NULL rule, with every NULL-by-nature column
NULL — proven red against the pre-fix scan and green after.