omnata-plugin-runtime 0.3.24a73__py3-none-any.whl → 0.3.24a74__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.
@@ -215,6 +215,7 @@ class SyncRequest(ABC):
215
215
  self._apply_results_task = None
216
216
  self._cancel_checking_task = None
217
217
  self._rate_limit_update_task = None
218
+ self._last_stream_progress_update = None
218
219
 
219
220
  threading.excepthook = self.thread_exception_hook
220
221
  if self.development_mode is False:
@@ -301,7 +302,7 @@ class SyncRequest(ABC):
301
302
  self.apply_cancellation()
302
303
  except Exception as e:
303
304
  logger.error(f"Error checking cancellation: {e}")
304
- cancellation_token.wait(10)
305
+ cancellation_token.wait(20)
305
306
  logger.info("cancel checking worker exiting")
306
307
 
307
308
  @abstractmethod
@@ -949,16 +950,18 @@ class InboundSyncRequest(SyncRequest):
949
950
 
950
951
  def apply_progress_updates(self):
951
952
  """
952
- Sends a message to the plugin with the current progress of the sync run.
953
+ Sends a message to the plugin with the current progress of the sync run, if it has changed since last time.
953
954
  """
954
- # TODO: Only send them if they have changed since last time
955
- self._plugin_message(
956
- message=PluginMessageStreamProgressUpdate(
955
+ new_progress_update = PluginMessageStreamProgressUpdate(
957
956
  stream_total_counts=self._stream_record_counts,
958
957
  completed_streams=self._completed_streams,
959
958
  stream_errors=self._omnata_log_handler.stream_global_errors
960
959
  )
961
- )
960
+ if self._last_stream_progress_update is None or new_progress_update != self._last_stream_progress_update:
961
+ self._plugin_message(
962
+ message=new_progress_update
963
+ )
964
+ self._last_stream_progress_update = new_progress_update
962
965
 
963
966
  def apply_cancellation(self):
964
967
  """
@@ -1223,8 +1226,6 @@ class InboundSyncRequest(SyncRequest):
1223
1226
  raise ValueError(
1224
1227
  f"Primary key field '{primary_key_field}' was not present in all records for stream {stream_name}"
1225
1228
  )
1226
- # TODO: handle the scenario where the primary key field is a list, and concatenate the values to form the APP_IDENTIFIER
1227
- # Currently this is only implemented in the java runtime, since it's typically databases that use composite keys
1228
1229
  results_df["APP_IDENTIFIER"] = results_df["RECORD_DATA"].apply(lambda x: get_nested_value(dict(x),primary_key_field))
1229
1230
  # ensure APP_IDENTIFIER is a string
1230
1231
  results_df["APP_IDENTIFIER"] = results_df["APP_IDENTIFIER"].apply(str)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: omnata-plugin-runtime
3
- Version: 0.3.24a73
3
+ Version: 0.3.24a74
4
4
  Summary: Classes and common runtime components for building and running Omnata Plugins
5
5
  Author: James Weakley
6
6
  Author-email: james.weakley@omnata.com
@@ -3,10 +3,10 @@ omnata_plugin_runtime/api.py,sha256=_N5ok5LN7GDO4J9n3yduXp3tpjmhpySY__U2baiygrs,
3
3
  omnata_plugin_runtime/configuration.py,sha256=7cMekoY8CeZAJHpASU6tCMidF55Hzfr7CD74jtebqIY,35742
4
4
  omnata_plugin_runtime/forms.py,sha256=pw_aKVsXSz47EP8PFBI3VDwdSN5IjvZxp8JTjO1V130,18421
5
5
  omnata_plugin_runtime/logging.py,sha256=bn7eKoNWvtuyTk7RTwBS9UARMtqkiICtgMtzq3KA2V0,3272
6
- omnata_plugin_runtime/omnata_plugin.py,sha256=Mrdno-llID_pvOHmKBiGF57qucb7fu_y556sjGl-it4,103814
6
+ omnata_plugin_runtime/omnata_plugin.py,sha256=SYHOE3w134j7TA9ljmdUi1LtKrc7ZyIiozj5ycCHN94,103800
7
7
  omnata_plugin_runtime/plugin_entrypoints.py,sha256=-0noaDSwRLdjOBsA37GFKjOV2hInGa5eky2wF90KdNI,28279
8
8
  omnata_plugin_runtime/rate_limiting.py,sha256=se6MftQI5NrVHaLb1hByPCgAESPQhkAgIG7KIU1clDU,16562
9
- omnata_plugin_runtime-0.3.24a73.dist-info/LICENSE,sha256=IMF9i4xIpgCADf0U-V1cuf9HBmqWQd3qtI3FSuyW4zE,26526
10
- omnata_plugin_runtime-0.3.24a73.dist-info/METADATA,sha256=ThKHbi3_-xxypuFL5R0bUMbCHUhnk5M4IJUozSgwDoQ,1604
11
- omnata_plugin_runtime-0.3.24a73.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
12
- omnata_plugin_runtime-0.3.24a73.dist-info/RECORD,,
9
+ omnata_plugin_runtime-0.3.24a74.dist-info/LICENSE,sha256=IMF9i4xIpgCADf0U-V1cuf9HBmqWQd3qtI3FSuyW4zE,26526
10
+ omnata_plugin_runtime-0.3.24a74.dist-info/METADATA,sha256=GW3ND2kIp75lU46-TQ847p4goFt5M6nbN1uAMrQcaes,1604
11
+ omnata_plugin_runtime-0.3.24a74.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
12
+ omnata_plugin_runtime-0.3.24a74.dist-info/RECORD,,