Having watched the code executed in the debugger more than a dozen times through that specific code path, you are incorrect in your assumption. In the if statement, the `exchange.getDepth()` is called on the primed key value (10), not the whole key. 

The exchange and index are always the foreign key index, which is a non-unique index.