@@ -374,12 +374,6 @@ def stop(self) -> None:
374374 self ._next_scheduled_for_alias .clear ()
375375 self ._query_heap .clear ()
376376
377- def schedule_ptr_first_refresh (self , pointer : DNSPointer ) -> None :
378- """Schedule a query for a pointer."""
379- expire_time_millis = pointer .get_expiration_time (100 )
380- refresh_time_millis = pointer .get_expiration_time (_EXPIRE_REFRESH_TIME_PERCENT )
381- self ._schedule_ptr_refresh (pointer , expire_time_millis , refresh_time_millis )
382-
383377 def _schedule_ptr_refresh (
384378 self , pointer : DNSPointer , expire_time_millis : float_ , refresh_time_millis : float_
385379 ) -> None :
@@ -415,6 +409,7 @@ def reschedule_ptr_first_refresh(self, pointer: DNSPointer) -> None:
415409 ):
416410 return
417411 current .cancelled = True
412+ del self ._next_scheduled_for_alias [pointer .alias ]
418413 expire_time_millis = pointer .get_expiration_time (100 )
419414 self ._schedule_ptr_refresh (pointer , expire_time_millis , refresh_time_millis )
420415
@@ -490,10 +485,8 @@ def _process_ready_types(self) -> None:
490485 if query .when_millis > end_time_millis :
491486 next_scheduled = query
492487 break
493-
488+ query = heappop ( self . _query_heap )
494489 ready_types .add (query .name )
495-
496- heappop (self ._query_heap )
497490 del self ._next_scheduled_for_alias [query .alias ]
498491 # If there is still more than 10% of the TTL remaining
499492 # schedule a query again to try to rescue the record
@@ -670,7 +663,7 @@ def async_update_records(self, zc: 'Zeroconf', now: float_, records: List[Record
670663 for type_ in self .types .intersection (cached_possible_types (pointer .name )):
671664 if old_record is None :
672665 self ._enqueue_callback (SERVICE_STATE_CHANGE_ADDED , type_ , pointer .alias )
673- self .query_scheduler .schedule_ptr_first_refresh (pointer )
666+ self .query_scheduler .reschedule_ptr_first_refresh (pointer )
674667 elif pointer .is_expired (now ):
675668 self ._enqueue_callback (SERVICE_STATE_CHANGE_REMOVED , type_ , pointer .alias )
676669 self .query_scheduler .cancel_ptr_refresh (pointer )
0 commit comments