I noticed that spring-data-gemfire repositories are extremely slow in client-server architecture when it comes to uploading a big data set into gemfire cache. I checked the sources and I see that
save(Iterable<U> entities)
just iterates through all the entries and puts them individually.
Why doesn't it use Region.putAll? - it would be a lot faster.
Indeed, you are correct. This predates me, but I will implement this change. See https://jira.spring.io/browse/SGF-343 for further details.
We do have 1 more scheduled 1.4 SDG release (1.4.5 for SR5) in Spring Data Dijkstra release train (https://github.com/spring-projects/spring-data-commons/wiki/Release-Train-Dijkstra). This change will also be targeted at the SDG 1.5.1 (Evans SR1) release and will obviously be included in the upcoming 1.6 M1 (Fowler) release.
If you are not using 1 of these SDG versions, then I encourage you to upgrade as I will not back port this change to 1.3.x or earlier.
Cheers!