The lack of a configurable batch send timeout can leave compute running waiting for timeouts longer than is worth the cost of keeping the compute running. Some very ephemeral compute environments prefer to fail fast instead of spending money on uptime.
Some backstory in the Pollinators Slack wherein AWS Lambdas spent some dollars during an extended ingest incident that caused long response times.
Short description of the changes
a little refactor to the test timeout roundtripper to teach it to count how many timeouts it ought to return
added a test to confirm timeout responses result in only 1 retry
made the send timeout for batches configurable, keeping the previous 60 second default
Which problem is this PR solving?
Short description of the changes