dagster-fivetran 0.28.10__py3-none-any.whl → 0.28.11__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -497,12 +497,14 @@ class FivetranClient:
497
497
  api_secret: str,
498
498
  request_max_retries: int,
499
499
  request_retry_delay: float,
500
+ request_backoff_factor: float,
500
501
  disable_schedule_on_trigger: bool,
501
502
  ):
502
503
  self.api_key = api_key
503
504
  self.api_secret = api_secret
504
505
  self.request_max_retries = request_max_retries
505
506
  self.request_retry_delay = request_retry_delay
507
+ self.request_backoff_factor = request_backoff_factor
506
508
  self.disable_schedule_on_trigger = disable_schedule_on_trigger
507
509
 
508
510
  @property
@@ -600,7 +602,12 @@ class FivetranClient:
600
602
  if num_retries == self.request_max_retries:
601
603
  return response # type: ignore
602
604
  num_retries += 1
603
- time.sleep(self.request_retry_delay)
605
+ delay = self.request_retry_delay * (self.request_backoff_factor**num_retries)
606
+ self._log.info(
607
+ f"Retrying Fivetran API request in {delay:.2f}s "
608
+ f"(attempt {num_retries}/{self.request_max_retries})."
609
+ )
610
+ time.sleep(delay)
604
611
 
605
612
  def get_connector_details(self, connector_id: str) -> Mapping[str, Any]:
606
613
  """Gets details about a given connector from the Fivetran API.
@@ -978,6 +985,10 @@ class FivetranWorkspace(ConfigurableResource):
978
985
  default=0.25,
979
986
  description="Time (in seconds) to wait between each request retry.",
980
987
  )
988
+ request_backoff_factor: float = Field(
989
+ default=1.0,
990
+ description="Multiplier applied to the delay between retries. Set to >1 for exponential backoff.",
991
+ )
981
992
  disable_schedule_on_trigger: bool = Field(
982
993
  default=True,
983
994
  description=(
@@ -1004,6 +1015,7 @@ class FivetranWorkspace(ConfigurableResource):
1004
1015
  api_secret=self.api_secret,
1005
1016
  request_max_retries=self.request_max_retries,
1006
1017
  request_retry_delay=self.request_retry_delay,
1018
+ request_backoff_factor=self.request_backoff_factor,
1007
1019
  disable_schedule_on_trigger=self.disable_schedule_on_trigger,
1008
1020
  )
1009
1021
 
@@ -1 +1 @@
1
- __version__ = "0.28.10"
1
+ __version__ = "0.28.11"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dagster-fivetran
3
- Version: 0.28.10
3
+ Version: 0.28.11
4
4
  Summary: Package for integrating Fivetran with Dagster.
5
5
  Home-page: https://github.com/dagster-io/dagster/tree/master/python_modules/libraries/dagster-fivetran
6
6
  Author: Dagster Labs
@@ -15,9 +15,9 @@ Classifier: License :: OSI Approved :: Apache Software License
15
15
  Classifier: Operating System :: OS Independent
16
16
  Requires-Python: >=3.10,<3.15
17
17
  License-File: LICENSE
18
- Requires-Dist: dagster==1.12.10
18
+ Requires-Dist: dagster==1.12.11
19
19
  Provides-Extra: managed
20
- Requires-Dist: dagster-managed-elements==0.28.10; extra == "managed"
20
+ Requires-Dist: dagster-managed-elements==0.28.11; extra == "managed"
21
21
  Provides-Extra: test
22
22
  Requires-Dist: pytest-order; extra == "test"
23
23
  Dynamic: author
@@ -6,11 +6,11 @@ dagster_fivetran/constants.py,sha256=hsdYi7WlDIfvrw4ATVha7K6GQHNnSelVieqNao1hzco
6
6
  dagster_fivetran/fivetran_event_iterator.py,sha256=DyZK5HQ7cFD4CWnhvPB7Hj5nUycjcoQ6IFrTX3SvgbQ,5652
7
7
  dagster_fivetran/ops.py,sha256=SNxRuShLI3MtqQLRAuIfRaUpKGqUmapCmEaop48_mIM,7694
8
8
  dagster_fivetran/py.typed,sha256=la67KBlbjXN-_-DfGNcdOcjYumVpKG_Tkw-8n5dnGB4,8
9
- dagster_fivetran/resources.py,sha256=0APIjz2ovJo5gpoVzxs2rSmcs73BbhTYt8DPI3iaiHU,61553
9
+ dagster_fivetran/resources.py,sha256=Akomicktg3wmBOrj6eGRnZl6enDK19xogusTMnZBpjk,62164
10
10
  dagster_fivetran/translator.py,sha256=KyjB6nUuvN27hnIC-Oh4U_rrdud6Vfn9GH5GGFLBU9M,12470
11
11
  dagster_fivetran/types.py,sha256=1IXrLu937TMFdwi0tJJFRcT8Td5N8tfJe3rHArvPi68,957
12
12
  dagster_fivetran/utils.py,sha256=-xwgtr-UP3Q25ZIQzir4qPkLhYurnkdJY--5cr1ANC8,5918
13
- dagster_fivetran/version.py,sha256=110BPTEyn13PDWnHpj0D7VMBpjnNxJ6-MM3ZHvQwyQ0,24
13
+ dagster_fivetran/version.py,sha256=MlSqB7SmZ8R1F0K_PtG4rMWRGGllC7hEsX-reHAF_8A,24
14
14
  dagster_fivetran/components/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
15
  dagster_fivetran/components/workspace_component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  dagster_fivetran/components/workspace_component/component.py,sha256=tq68-TjMyVBoRWBJ0YRXofd153lzABpT2b96L_92Kso,10535
@@ -18,9 +18,9 @@ dagster_fivetran/components/workspace_component/scaffolder.py,sha256=2mv1vqN2KPn
18
18
  dagster_fivetran/managed/__init__.py,sha256=ki6yF6pMBQXXu6TwUom1BP0-PYW5RTYgvWmh3hRuT7w,269
19
19
  dagster_fivetran/managed/reconciliation.py,sha256=a0qLo52hqB5BCGBpLr5uLumkjgy72m0OmZYIyV5yCx8,14630
20
20
  dagster_fivetran/managed/types.py,sha256=PamX40i5JSAIrr97G4lEsHA6VdJLGBm99aVGNzgd-og,3622
21
- dagster_fivetran-0.28.10.dist-info/licenses/LICENSE,sha256=4lsMW-RCvfVD4_F57wrmpe3vX1xwUk_OAKKmV_XT7Z0,11348
22
- dagster_fivetran-0.28.10.dist-info/METADATA,sha256=qsyVyv3-1OxOC4sxcLVsEYBfUslyWbBh91jfoqVjdPI,1111
23
- dagster_fivetran-0.28.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
24
- dagster_fivetran-0.28.10.dist-info/entry_points.txt,sha256=2F7i9srZ1_8pwixGIodaNaWECGjqmBf8yvbYzzoULsc,134
25
- dagster_fivetran-0.28.10.dist-info/top_level.txt,sha256=8GH5pXbKSZEW4MVEAeOMN0e7cSH0h_4tjxp5WpZtkGA,17
26
- dagster_fivetran-0.28.10.dist-info/RECORD,,
21
+ dagster_fivetran-0.28.11.dist-info/licenses/LICENSE,sha256=4lsMW-RCvfVD4_F57wrmpe3vX1xwUk_OAKKmV_XT7Z0,11348
22
+ dagster_fivetran-0.28.11.dist-info/METADATA,sha256=s6c8fR9KCg_Ijp74AmiGwZ8lXKj27gzbeHs28FZwOgo,1111
23
+ dagster_fivetran-0.28.11.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
24
+ dagster_fivetran-0.28.11.dist-info/entry_points.txt,sha256=2F7i9srZ1_8pwixGIodaNaWECGjqmBf8yvbYzzoULsc,134
25
+ dagster_fivetran-0.28.11.dist-info/top_level.txt,sha256=8GH5pXbKSZEW4MVEAeOMN0e7cSH0h_4tjxp5WpZtkGA,17
26
+ dagster_fivetran-0.28.11.dist-info/RECORD,,