Thank you hpkeong and mrdang for the feedback.
I have done more testing and now Collect to a data source does not give me the issues it did earlier, frankly I am not sure why.
In any case, now that Collect is working properly, I tried both approaches to creating 3 new records:
1) Patch default a series of records
OnSelect = Patch(MySource, Defaults (MySource), [NewRecord1]); Patch(MySource, Defaults (MySource), [NewRecord2]); Patch(MySource, Defaults (MySource), [NewRecord3])
2) Create a collection of the new records then Collect to data source
OnSelect = ClearCollect(MyChanges, [Record1], [Record2], [Record3]); Collect(MySource, MyChanges)
I found performance quicker with the second approach. This seems to because PowerApps seemed to be doing only one write operation instead of three.
@hpkeong, could you please clarify what your "Auto-Batch-Saving" approach look like in the case of 3 new records to be added to a data source?
Many thanks,