### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

When requesting a  Complete operation at the end of a multi part upload, the parts have to be sorted in ascending order of part number.
AWS S3 issues an error if it is not the case. localstack does not generate such error (although, its log issues warnings)/

### Expected Behavior

Complete should generate an error

### How are you starting LocalStack?

With the `localstack` script

### Steps To Reproduce

localstack start

Buggy software extract (simplified)
```golang
	wg := errgroup.Group{}
	for i := 0; i < 3; i++ {
		wg.Go(func() error {
			rd, err := os.Open(source)
			if err != nil {
				return err
			}
			return u.Upload(rd, i, 10*_cMB)  // uploads and stores for part i
		})
	}
	err :=  wg.Wait()
if err != nil {
...
}
err = u.Complete()
// as using i inside the routines, all the four parts will have the same value 3
```

### Environment

```markdown
- OS:Ubuntu 20.04
- LocalStack: latest pro
```


### Anything else?

_No response_
ContentDisposition = str
ContentEncoding = str
ContentLanguage = str
ContentMD5 = str
ContentRange = str
ContentType = str
CopySource = str
CopySourceIfMatch = str
CopySourceIfNoneMatch = str
CopySourceRange = str
CopySourceSSECustomerAlgorithm = str
CopySourceSSECustomerKey = str
CopySourceSSECustomerKeyMD5 = str
CopySourceVersionId = str
Days = int
DaysAfterInitiation = int
DeleteMarker = bool
DeleteMarkerVersionId = str
Delimiter = str
Description = str
DisplayName = str
ETag = str
EmailAddress = str
EnableRequestProgress = bool
ErrorCode = str
ErrorMessage = str
Expiration = str
ExpiredObjectDeleteMarker = bool
ExposeHeader = str
Expression = str