Howdy -

We are using composite IDs of the form <user>!<event>.  This ensures that
all events for a user are stored in the same shard.

I'm assuming from the description of how composite ID routing works, that
if you split a shard the "split point" of the hash range for that shard is
chosen to maintain the invariant that all documents that share a routing
prefix (before the "!") will still map to the same (new) shard.  Is that
accurate?

A naive shard-split implementation (e.g. that chose the hash range split
point arbitrarily) could end up with "child" shards that split a routing
prefix.

Thanks,
Ian

Reply via email to