Yes. We will block on the client hashinator being initialized.

There is no default batchsize. It is passed in as a parameter to the constructor. Further, I am not sure what a good batchsize would be as it depends on the width of the table, the performance characteristics of the server and the amount of time the user is willing to lock up the database for any single transaction. I kind of like the idea of making the user think about a reasonable batch size based on their tuning requirements. If we move the explicit assignment into a separate function, we have  to specify a default. So you you want this, give me what you think is a reasonable default.

We have three kinds of exceptions: Client failure/connectivity, Row processing/conversion failure, and Initialization. As a rule I pass the first and third thru to the user and trap and convert the second into a callback. For Initialization, we will throw an exception if the Client does not initialize or if the Table Name is invalid. Someone suggested a new VoltBulkLoaderInitException. If that is the conventional wisdom, I will add another file.