aws / aws/sagemaker-python-sdk
Cannot use spark_event_logs_s3_uri in PySparkProcessor job
- Langage dominant
- Python
- Étoiles
- 2.3k
- Forks
- 1.3k
- Merge moyen
- 1 j 22 h
- PR mergées (30 j)
- 35
Description
**PySDK Version**
- [ ] PySDK V2 (2.x)
- [x] PySDK V3 (3.x)
**Describe the bug**
Similar to #6252 - PySparkProcessor `run` no longer handles `spark_event_logs_s3_uri` due to changes in the `ProcessingOutput` interface - e.g. regression introduced in 3203e49
**To reproduce**
Provide any (valid) S3 URI for the spark log location.
**Expected behavior**
Successfully starts the job.
**Screenshots or logs**
```
ValidationError: 4 validation errors for ProcessingOutput
output_name
Field required [type=missing, input_value={'source': '/opt/ml/proce...oad_mode': 'Continuous'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.13/v/missing
source
Extra inputs are not permitted [type=extra_forbidden, input_value='/opt/ml/processing/spark-events/', input_type=str]
For further information visit https://errors.pydantic.dev/2.13/v/extra_forbidden
destination
Extra inputs are not permitted [type=extra_forbidden, input_value='s3://...', input_type=str]
For further information visit https://errors.pydantic.dev/2.13/v/extra_forbidden
s3_upload_mode
Extra inputs are not permitted [type=extra_forbidden, input_value='Continuous', input_type=str]
For further information visit https://errors.pydantic.dev/2.13/v/extra_forbidden
```
The cause of the error is [here](https://github.com/aws/sagemaker-python-sdk/blob/8e7485a1ed25eb17c70f2323ab6ed6c9695d7024/sagemaker-core/src/sagemaker/core/spark/processing.py#L293-L297):
```py
output = ProcessingOutput(
source=_SparkProcessorBase._spark_event_log_default_local_path,
destination=spark_event_logs_s3_uri,
s3_upload_mode="Continuous",
)
```
**System information**
- AWS SageMaker Studio 4.4.3
- sagemaker-core: 2.20
- Python 3.12.14
- uname: Linux default 6.12.103-127.188.amzn2023.x86_64 SMP PREEMPT_DYNAMIC Tue Aug 25 15:42:53 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez dans sagemaker-core/src/sagemaker/core/spark/processing.py, autour de la construction de ProcessingOutput pour le journal d’événements de PySparkProcessor. Reproduisez l’échec avec une spark_event_logs_s3_uri valide et examinez l’interface actuelle de ProcessingOutput. La tâche est terminée lorsque le job PySparkProcessor démarre correctement avec les journaux d’événements Spark configurés.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python, spark
- Domaine
- data-engineering, machine-learning
- Type d'issue
- Bug
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- Active
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 78/100