Following the common advice I’m trying to do the batch get(), that is: prepare list of keys first and then:
entities = db.get(key_list)
But then I look to AppStats I see an RPC call per item in my key_list. Yes, these calls are running in async manner and end at the same time, buy why is that? Isn’t batch get() supposed to fire one RPC call at all?…
As of recently, bulk gets in HR apps will trigger one get operation per entity group (not per entity), executed in parallel as you observe. The reason for this is that it’s faster to fetch each entity group in parallel rather than in a single batch, as the backend was previously looking up entity group transaction logs serially.