### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

with python boto3 client

- send a message to fifo queue with MessageGroupId='1'
- receive the message
- delete the message
- send another message to the queue with MessageGroupId='1'
- try to receive the message, get none
- check message availability with get_queue_attributes, get `{'ApproximateNumberOfMessages': '1', 'ApproximateNumberOfMessagesNotVisible': '0', 'ApproximateNumberOfMessagesDelayed': '0', ...`

### Expected Behavior

expecting to receive message from the queue

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

docker-compose up


### Environment

```markdown
- OS:MacOS Sonoma 14.2.1
- LocalStack: latest
```


### Anything else?

I tried to run with Rosetta, no result
queue_name = f"queue-{short_uid()}"
        queue_url = sqs_create_queue(Name=queue_name)
        invalid_message_body = f"Invalid-{chr(0)}-{chr(8)}-{chr(19)}-{chr(65535)}"
        with pytest.raises(Exception) as e:
            aws_sqs_client.send_message(Url=queue_url, MessageBody=invalid_message_body)
        e.match("InvalidMessageContents")
    @markers.aws.validated
    def test_dead_letter_queue_config(self, sqs_create_queue):
        queue_name = f"queue-{short_uid()}"
        dead_letter_queue_name = f"dead_letter_queue-{short_uid()}"
        dl_queue_url = sqs_create_queue(Name=dead_letter_queue_name)
        url_parts = dl_queue_url.split("/")
        region = TEST_AWS_REGION_NAME
        dl_target_arn = "arn:aws:sqs:{}:{}:{}".format(
            region, url_parts[len(url_parts) - 2], url_parts[-1]
        )
        conf = {"deadLetterTargetArn": dl_target_arn, "maxReceiveCount": 50}
        attributes = {"RedrivePolicy": json.dumps(conf)}
        queue_url = sqs_create_queue(Name=queue_name, Attributes=attributes)
        assert queue_url
    @markers.aws.validated
    def test_dead_letter_queue_list_sources(self, sqs_create_queue, aws_sqs_client):