title: SQL Server: rollback after insert that contains an output inserted fails mysteriously
body: <p>A rollback after an insert that contains an output statement fails with
  "The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION."
  If the output statement is removed, then it works. Is there an explanation for this behavior?</p>
  
  <p>Example:</p>
  
  <pre><code>create table test(i integer primary key)
  go
  begin transaction
    insert into test (i) values (1)
    insert into test (i) output inserted.i values (1)
  go
  rollback -- Fails 
  go
  
  begin transaction
    insert into test (i) values (1)
    insert into test (i) values (1)
  go
  rollback -- Works
  go
  </code></pre>