Batches in kafka producer client

I have set the following config for producer:
enable.idempotence = true
max.in.flight.requests.per.connection = 1

I had the following queries:

  1. what happens to the batch of records in the producer buffer memory if the send request to broker fails. will the same batch gets sent again?
  2. while a batch is sent to the broker in a request will there be a new batch formed in the buffer memory for the same partition for subsequent producer.send() requests or the producer.send() request will be blocked ?