- memoize coord→zone_index (bounded thread-safe LRU, ±1m key, negative caching) so repeat /analyze skips the live WFS round-trip; regulation content still read fresh from zone_regulation_cache (cache-update correctness preserved). Lock guards the module-global memo (sync /analyze runs in threadpool); WFS call stays outside lock. - resolve once, thread into build_ird_analyze_block (resolved_zone_regulation kwarg) → no redundant 2nd resolve when both enable_zoning_regulation_in_analyze and enable_ird_analyze are on. - unify divergent timeouts (parcels 3s / ird 4s) into settings.geoportal_timeout_s=4. - document (not change) the mid-request db.commit() smell on cache-miss (separate task). Closes #1850 |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| admin_cadastre.py | ||
| admin_etl.py | ||
| admin_jobs.py | ||
| admin_leads.py | ||
| admin_scrape.py | ||
| admin_weight_profiles.py | ||
| analytics.py | ||
| chat.py | ||
| concepts.py | ||
| custom_pois.py | ||
| insights.py | ||
| landing.py | ||
| locations.py | ||
| market.py | ||
| me.py | ||
| own_projects.py | ||
| parcels.py | ||
| photos.py | ||
| pilot.py | ||
| ping.py | ||
| trade_in.py | ||
| users.py | ||