title: Java parallelStream map misses records
body: <p>I have the following code and it behaves non deterministically sometimes. For example I pass 3 events there and the output have only two! Could you explain the reason of such behaviour?</p>
  
  <pre><code>public List&lt;AbstractTransactionResponse&gt; getEventResponse(final List&lt;AbstractEvent&gt; events){
  
          List&lt;AbstractTransactionResponse&gt; abstractTransactionResponses = new ArrayList&lt;&gt;();
          events.parallelStream().map(event -&gt; {
              abstractTransactionResponses.add(getEventResponse(event));
              return null;
          }).collect(Collectors.toList());
          return abstractTransactionResponses;
      }
  </code></pre>