From 336c23fd42bec8d6bc43260f8baf591a1f5b96c6 Mon Sep 17 00:00:00 2001 From: Rene Fichtmueller Date: Wed, 29 Apr 2026 10:11:11 +0200 Subject: [PATCH] fix: null-safe localDb calls in /api/lookup when PostgreSQL unavailable --- server.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server.js b/server.js index e8d7531..d174c13 100644 --- a/server.js +++ b/server.js @@ -3352,14 +3352,14 @@ const server = http.createServer(async (req, res) => { ]).then(d => { rdapCacheSet(asn, d); return d; }); const promises = [ - timedFetch("RIPE Stat Prefixes", localDb.getRipeStatAnnouncedPrefixes(asn)), - timedFetch("RIPE Stat Neighbours", localDb.getRipeStatAsnNeighbours(asn)), - timedFetch("RIPE Stat Overview", localDb.getRipeStatAsOverview(asn)), + timedFetch("RIPE Stat Prefixes", localDb ? localDb.getRipeStatAnnouncedPrefixes(asn) : Promise.resolve(null)), + timedFetch("RIPE Stat Neighbours", localDb ? localDb.getRipeStatAsnNeighbours(asn) : Promise.resolve(null)), + timedFetch("RIPE Stat Overview", localDb ? localDb.getRipeStatAsOverview(asn) : Promise.resolve(null)), timedFetch("RIPE Stat RIR", Promise.resolve(null)), timedFetch("RIPE Atlas", Promise.resolve(null)), timedFetch("bgp.he.net", Promise.resolve(null)), - timedFetch("RIPE Stat Visibility", localDb.getRipeStatVisibility(asn)), - timedFetch("RIPE Stat PrefixSize", localDb.getRipeStatPrefixSizeDistribution(asn)), + timedFetch("RIPE Stat Visibility", localDb ? localDb.getRipeStatVisibility(asn) : Promise.resolve(null)), + timedFetch("RIPE Stat PrefixSize", localDb ? localDb.getRipeStatPrefixSizeDistribution(asn) : Promise.resolve(null)), timedFetch("PeeringDB IXLan", cachedIxlan ? Promise.resolve(cachedIxlan) : fetchPeeringDBWithRetry(ixQuery)), timedFetch("PeeringDB Facilities", cachedFac ? Promise.resolve(cachedFac) : (netId ? fetchPeeringDBWithRetry("/netfac?net_id=" + netId + "&limit=1000") : Promise.resolve(null))), timedFetch("PeeringDB Contacts", pocQuery ? fetchPeeringDB(pocQuery).catch(() => null) : Promise.resolve(null)),