Juhani..my bad, i was mistaken. Nevertheless..
Knowing the batch size could be used for optimizations in the transaction. For instance the put/take lists in the memory channel can be switched from a Linked list to an array based list which requires single memory allocation (batch sized) instead of one allocation for each put().
Also as I am implementing the spillable channel FLUME-1227, i am also finding batchSize useful for deciding whether all the put()s in a transaction should go into primary memory channel or into the overflow channel .. basically a put transaction cannot span both channels (to avoid splitting into multiple transactions) so there is a need for making such a decision up front. Currently i am using the transactionCapacity as a workaround to make this decision.