diff --git a/source-jira-native/source_jira_native/streams.py b/source-jira-native/source_jira_native/streams.py index 878c6f814b..51d371c20d 100644 --- a/source-jira-native/source_jira_native/streams.py +++ b/source-jira-native/source_jira_native/streams.py @@ -1015,6 +1015,10 @@ def parse_response(self, response: requests.Response, **kwargs) -> Iterable[Mapp def read_records(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: for project in read_full_refresh(self.projects_stream): + # Skip fetching child resources for deleted projects since attempting to do so will return a 404 error. + if project.get('deleted', None): + continue + yield from super().read_records(stream_slice={"key": project["key"]}, **kwargs) @@ -1049,6 +1053,10 @@ def path(self, stream_slice: Mapping[str, Any], **kwargs) -> str: def read_records(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: for project in read_full_refresh(self.projects_stream): + # Skip fetching child resources for deleted projects since attempting to do so will return a 404 error. + if project.get('deleted', None): + continue + yield from super().read_records(stream_slice={"key": project["key"]}, **kwargs) @@ -1100,6 +1108,10 @@ def path(self, stream_slice: Mapping[str, Any], **kwargs) -> str: def read_records(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: for project in read_full_refresh(self.projects_stream): + # Skip fetching child resources for deleted projects since attempting to do so will return a 404 error. + if project.get('deleted', None): + continue + yield from super().read_records(stream_slice={"key": project["key"]}, **kwargs) def transform(self, record: MutableMapping[str, Any], stream_slice: Mapping[str, Any], **kwargs) -> MutableMapping[str, Any]: @@ -1152,7 +1164,7 @@ def path(self, stream_slice: Mapping[str, Any], **kwargs) -> str: def read_records(self, stream_slice: Optional[Mapping[str, Any]] = None, **kwargs) -> Iterable[Mapping[str, Any]]: for project in read_full_refresh(self.projects_stream): - # Skip fetching emails for deleted projects since attempting to do so will return a 404 error. + # Skip fetching child resources for deleted projects since attempting to do so will return a 404 error. if project.get('deleted', None): continue