File tree Expand file tree Collapse file tree 1 file changed +16
-1
lines changed
Expand file tree Collapse file tree 1 file changed +16
-1
lines changed Original file line number Diff line number Diff line change 77from typing import List
88
99from databases import Database
10- from backend .services .users .user_service import UserService
10+ from backend .services .users .user_service import UserService , UserServiceError
1111from backend .models .postgis .user import User
1212from backend .config import settings
1313
@@ -77,6 +77,21 @@ async def process_user(
7777 )
7878 await asyncio .sleep (RETRY_DELAY )
7979 continue
80+ except UserServiceError as exc :
81+ # Non-retriable external API error from UserService (e.g. OSM returned 404/410)
82+ # 404 for user not found.
83+ # 410 for user deleted from osm. Gone error code.
84+ async with failed_lock :
85+ failed_users .append (user_record .id )
86+ logger .info (
87+ "OSM error for user %s — recorded in osm_failed_users: %s" ,
88+ user_record .id ,
89+ exc ,
90+ )
91+ logger .debug (
92+ "UserServiceError for user %s" , user_record .id , exc_info = True
93+ )
94+ break
8095 except Exception :
8196 async with failed_lock :
8297 failed_users .append (user_record .id )
You can’t perform that action at this time.
0 commit comments