https://github.com/viant/mly/blob/v0.19.x/shared/client/messages.go#L20 shared/client.(*messages).Borrow() does not reset batchSize - this results in mixed non-batched and batched calls running into panic() when using the respective non-batch and batch value setters.
Should non-batch be forced to specify SetBatchSize(0)?
No - legacy code (before batching was introduced) does not require this.
Since batching is an additional feature and requires the explicit calling of SetBatchSize(), it is preferred to reset the Message to a legacy-safe state.