### 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
monkeypatch.setattr(config, "SQS_ENABLE_MESSAGE_RETENTION_PERIOD", True)
        if is_aws_cloud():
            message_retention_period = 60
            wait_time = 5
        else:
            message_retention_period = 2
            wait_time = 1
        
        queue_url = sqs_create_queue(
            Attributes={
                "MessageRetentionPeriod": str(message_retention_period),
                "VisibilityTimeout": str(message_retention_period),
            }
        )
        aws_client.sqs.send_message(Url=queue_url, MessageBody="foobar1")
        aws_client.sqs.send_message(Url=queue_url, MessageBody="foobar2")
        
        
        time.sleep(wait_time)
        response = aws_client.sqs.receive_message(Url=queue_url, MaxNumberOfMessages=1)
        assert response["Messages"][0]["Body"] == "foobar1"
        receipt_handle = response["Messages"][0]["ReceiptHandle"]
        
        time.sleep(message_retention_period + 1)
        response = aws_client.sqs.receive_message(Url=queue_url)
        assert not response.get("Messages")
        
        time.sleep(wait_time * 1.5)
        response = aws_client.sqs.receive_message(Url=queue_url)