@@ -93,7 +93,7 @@ def __init__(
9393 ):
9494 self ._requester = requester
9595 self ._poll_interval = poll_interval
96- self ._event = Event ()
96+ self ._interrupt_event = Event ()
9797 self ._stop = Event ()
9898 self ._task = RepeatingTask (
9999 "ldclient.datasource.polling" , poll_interval , 0 , self ._poll
@@ -117,6 +117,7 @@ def sync(self, ss: SelectorStore) -> Generator[Update, None, None]:
117117 occurs.
118118 """
119119 log .info ("Starting PollingDataSourceV2 synchronizer" )
120+ self ._interrupt_event .clear ()
120121 self ._stop .clear ()
121122 while self ._stop .is_set () is False :
122123 result = self ._requester .fetch (ss .selector ())
@@ -154,6 +155,7 @@ def sync(self, ss: SelectorStore) -> Generator[Update, None, None]:
154155 error = error_info ,
155156 environment_id = envid ,
156157 )
158+ self ._interrupt_event .wait (self ._poll_interval )
157159 continue
158160
159161 yield Update (
@@ -184,13 +186,13 @@ def sync(self, ss: SelectorStore) -> Generator[Update, None, None]:
184186 revert_to_fdv1 = headers .get (_LD_FD_FALLBACK_HEADER ) == 'true'
185187 )
186188
187- if self ._event .wait (self ._poll_interval ):
189+ if self ._interrupt_event .wait (self ._poll_interval ):
188190 break
189191
190192 def stop (self ):
191193 """Stops the synchronizer."""
192194 log .info ("Stopping PollingDataSourceV2 synchronizer" )
193- self ._event .set ()
195+ self ._interrupt_event .set ()
194196 self ._task .stop ()
195197 self ._stop .set ()
196198
0 commit comments