title: Doctrine innerOrder[int] column implementation for manual sort order control
body: <p>I have two tables in my app's schema: Event and Game (one-to-many). Games are ordered by datetime field. But sometimes there can be games played in parallel (same datetime), but the user should be able to set their relative order.</p>
  
  <p>I've added <code>innerOrder</code> (int) field with simple idea: it should have autogenerated value that can be changed on reorder (exchange with neighbor record). But I can't achieve this behavior with Doctrine: <code>GeneratedValue</code> can't be used twice / with separate field (just don't work this way).</p>
  
  <p>On the next attempt I've tried to do it without autogeneration. But I need some initial value on insert, for example: <code>MAX(innerOrder)</code> (better - to set it automatically of course).</p>
  
  <p>I can't do it in <code>prePersist</code> or similar methods - don't have access to repository class. And don't want to do it with additional query in controller - not only because of additional code I should insert each time (get max value from table, set inner order), but I'm afraid of possible conflicts (when two users are adding Games in parallel).</p>
  
  <p>How should I achieve expected behavior (maybe, I'm totally wrong here)?</p>