mirror of
https://github.com/open5gs/open5gs.git
synced 2026-04-28 11:29:32 +00:00
When an NF loses heartbeat and enters re-registration, existing NRF subscription states tied to the previous NF instance remain both remotely (NRF) and locally (subscription_data pool). In environments with repeated heartbeat loss or timing races (e.g., docker-compose deployments), this leads to continuous re-subscription loops and unbounded growth of subscription_data entries, eventually exhausting the pool and triggering assertion failures in ogs_sbi_subscription_data_add(). This patch introduces a pre-registration cleanup mechanism: - Send DELETE requests for all subscriptions associated with the NF instance before re-registration. - Perform asynchronous local cleanup in the unsubscribe response handler (avoiding use-after-free and double free). - Add duplicate DELETE guard using subscription flags. - Improve logging visibility for subscription cleanup flow. This ensures that stale NRF subscription states are removed and prevents subscription_data pool exhaustion during re-registration loops. Issues: #4207 |
||
|---|---|---|
| .. | ||
| app | ||
| asn1c | ||
| core | ||
| crypt | ||
| dbi | ||
| diameter | ||
| gtp | ||
| ipfw | ||
| metrics | ||
| nas | ||
| ngap | ||
| pfcp | ||
| proto | ||
| s1ap | ||
| sbi | ||
| sctp | ||
| tun | ||
| meson.build | ||