I am wondering will there be any time limit for the batches to added to a Bulk API job once after the job has been initiated and before it can be closed? To be short, how long will a Bulk API job would wait for the subsequent batches which would be coming in the future? Please suggest.
The Bulk API Limits states:
You can submit up to 5,000 batches per rolling 24 hour period. You can't create new batches associated with a job that is more than 24 hours old.
Additionally, the job itself has a time limit:
Batches and jobs that are older than seven days are removed from the queue regardless of job status. The seven days are measured from the youngest batch associated with a job, or the age of the job if there are no batches. You can't create new batches associated with a job that is more than 24 hours old.
Looks like it will chunk it, and chunk it and then it will kick it back into the queue after 10 minutes, So it will wait 10 minutes.. is this what you were looking for?
There is also documentation here https://resources.docs.salesforce.com/194/latest/en-us/sfdc/pdf/salesforce_async_processing.pdf
Batches are processed in chunks. The chunk size depends on the API version. In API version 20.0 and earlier, the chunk size is 100 records. In API version 21.0 and later, the chunk size is 200 records. There’s a five-minute limit for processing each chunk. Also,
if it takes longer than 10 minutes to process a whole batch, the Bulk API places the remainder of the batch back in the queue for later processing. If the Bulk API continues to exceed the 10-minute limit on subsequent attempts, the batch is placed back in the queue and reprocessed up to 10 times before the batch is permanently marked as failed.