1414import urllib3
1515
1616from ldclient .config import Config , DataSourceBuilder , HTTPConfig
17- from ldclient .impl .datasource .feature_requester import LATEST_ALL_URI
17+ from ldclient .impl .datasource .feature_requester import FDV1_POLLING_ENDPOINT
1818from ldclient .impl .datasystem .protocolv2 import (
1919 DeleteObject ,
2020 EventName ,
2121 PutObject
2222)
2323from ldclient .impl .http import HTTPFactory , _base_headers
24- from ldclient .impl .repeating_task import RepeatingTask
2524from ldclient .impl .util import (
2625 _LD_ENVID_HEADER ,
2726 _LD_FD_FALLBACK_HEADER ,
5251 Update
5352)
5453
55- POLLING_ENDPOINT = "/sdk/poll"
54+ FDV2_POLLING_ENDPOINT = "/sdk/poll"
5655
5756
5857PollingResult = _Result [Tuple [ChangeSet , Mapping ], str ]
@@ -95,9 +94,6 @@ def __init__(
9594 self ._poll_interval = poll_interval
9695 self ._interrupt_event = Event ()
9796 self ._stop = Event ()
98- self ._task = RepeatingTask (
99- "ldclient.datasource.polling" , poll_interval , 0 , self ._poll
100- )
10197
10298 @property
10399 def name (self ) -> str :
@@ -193,7 +189,6 @@ def stop(self):
193189 """Stops the synchronizer."""
194190 log .info ("Stopping PollingDataSourceV2 synchronizer" )
195191 self ._interrupt_event .set ()
196- self ._task .stop ()
197192 self ._stop .set ()
198193
199194 def _poll (self , ss : SelectorStore ) -> BasisResult :
@@ -226,7 +221,7 @@ def _poll(self, ss: SelectorStore) -> BasisResult:
226221
227222 basis = Basis (
228223 change_set = change_set ,
229- persist = change_set .selector is not None ,
224+ persist = change_set .selector is not None and change_set . selector . is_defined () ,
230225 environment_id = env_id ,
231226 )
232227
@@ -251,7 +246,7 @@ def __init__(self, config: Config, base_uri: str, http_options: HTTPConfig):
251246 self ._http = factory .create_pool_manager (1 , base_uri )
252247 self ._http_options = http_options
253248 self ._config = config
254- self ._poll_uri = base_uri + POLLING_ENDPOINT
249+ self ._poll_uri = base_uri + FDV2_POLLING_ENDPOINT
255250
256251 def fetch (self , selector : Optional [Selector ]) -> PollingResult :
257252 """
@@ -482,7 +477,7 @@ def __init__(self, config: Config, base_uri: str, http_options: HTTPConfig):
482477 )
483478 self ._http_options = http_options
484479 self ._config = config
485- self ._poll_uri = base_uri + LATEST_ALL_URI
480+ self ._poll_uri = base_uri + FDV1_POLLING_ENDPOINT
486481
487482 def fetch (self , selector : Optional [Selector ]) -> PollingResult :
488483 """
0 commit comments