1212 TaskMetadata ,
1313 TaskUUID ,
1414)
15- from servicelib .redis import RedisClientSDK
15+ from servicelib .redis import RedisClientSDK , handle_redis_returns_union_types
1616
1717from ..utils import build_task_id_prefix
1818
@@ -41,11 +41,13 @@ async def create_task(
4141 expiry : timedelta ,
4242 ) -> None :
4343 task_key = _build_key (task_id )
44- await self ._redis_client_sdk .redis .hset (
45- name = task_key ,
46- key = _CELERY_TASK_METADATA_KEY ,
47- value = task_metadata .model_dump_json (),
48- ) # type: ignore
44+ await handle_redis_returns_union_types (
45+ self ._redis_client_sdk .redis .hset (
46+ name = task_key ,
47+ key = _CELERY_TASK_METADATA_KEY ,
48+ value = task_metadata .model_dump_json (),
49+ )
50+ )
4951 await self ._redis_client_sdk .redis .expire (
5052 task_key ,
5153 expiry ,
@@ -57,7 +59,11 @@ async def exists_task(self, task_id: TaskID) -> bool:
5759 return n > 0
5860
5961 async def get_task_metadata (self , task_id : TaskID ) -> TaskMetadata | None :
60- raw_result = await self ._redis_client_sdk .redis .hget (_build_key (task_id ), _CELERY_TASK_METADATA_KEY ) # type: ignore
62+ raw_result = await handle_redis_returns_union_types (
63+ self ._redis_client_sdk .redis .hget (
64+ _build_key (task_id ), _CELERY_TASK_METADATA_KEY
65+ )
66+ )
6167 if not raw_result :
6268 return None
6369
@@ -70,7 +76,11 @@ async def get_task_metadata(self, task_id: TaskID) -> TaskMetadata | None:
7076 return None
7177
7278 async def get_task_progress (self , task_id : TaskID ) -> ProgressReport | None :
73- raw_result = await self ._redis_client_sdk .redis .hget (_build_key (task_id ), _CELERY_TASK_PROGRESS_KEY ) # type: ignore
79+ raw_result = await handle_redis_returns_union_types (
80+ self ._redis_client_sdk .redis .hget (
81+ _build_key (task_id ), _CELERY_TASK_PROGRESS_KEY
82+ )
83+ )
7484 if not raw_result :
7585 return None
7686
@@ -126,8 +136,10 @@ async def remove_task(self, task_id: TaskID) -> None:
126136 await self ._redis_client_sdk .redis .delete (_build_key (task_id ))
127137
128138 async def set_task_progress (self , task_id : TaskID , report : ProgressReport ) -> None :
129- await self ._redis_client_sdk .redis .hset (
130- name = _build_key (task_id ),
131- key = _CELERY_TASK_PROGRESS_KEY ,
132- value = report .model_dump_json (),
133- ) # type: ignore
139+ await handle_redis_returns_union_types (
140+ self ._redis_client_sdk .redis .hset (
141+ name = _build_key (task_id ),
142+ key = _CELERY_TASK_PROGRESS_KEY ,
143+ value = report .model_dump_json (),
144+ )
145+ )
0 commit comments