Introducing an new counter would work, but it seems a little hacky. When there are two non-hashkey conditions, you will assign two different key names to `indexedKeyName` twice and the second assignment overrides the first assignment. It won't affect anything, but it feels weird.

What about we have a separate piece of code to check if we need GSI or not?