I deleted test case `test_s3_delete_non_existent_object`. It can pass CI, but I 
realize it can only be reproduced by `moto.mock_s3`.

That is, when we use `moto.mock_s3` to mirror the S3 environment, deleting an 
non-existent object would result in an `Errors` entry in the response. But in 
AWS S3 and IBM COS (S3-compatible), deleting non-existent object is allowed, 
and the non-existent key would still be in the `Deleted` entry.

**Regarding `S3DeleteObjectsOperator()`, if there is `Errors` entry in the 
response, the operator will raise exception and fail, as you advised earlier.**

**Reference**:
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.delete_objects
Response Syntax
```
{
    'Deleted': [
        {
            'Key': 'string',
            'VersionId': 'string',
            'DeleteMarker': True|False,
            'DeleteMarkerVersionId': 'string'
        },
    ],
    'RequestCharged': 'requester',
    'Errors': [
        {
            'Key': 'string',
            'VersionId': 'string',
            'Code': 'string',
            'Message': 'string'
        },
    ]
}
```

[ Full content available at: 
https://github.com/apache/incubator-airflow/pull/3823 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to