Hi there,
When I was splitting the workflow into different segments, the records from upstream didn't segment correctly based on the criteria.
The upstream records before split are shown in pic 1.
It has six records, three in record type 1, two in record type 2, and one in record type 4. The settings of split are shown in pic 2 

It splits the records based on record type. So, if I uncheck 'Enable overlapping of output populations' box, then I got the result shown as pic 4:

It only evaluates if the record type =2, then ignore other conditions. But if I check 'Enable overlapping of output populations' box, then everything works fine. I do understand if 'Enable overlapping of output populations' option is unchecked, then the sequence of each segment is important.
But in my understanding, if I uncheck 'Enable overlapping of output populations', then the split activity evaluates the condition like ' if then, else if then, else then'. It evaluates the condition starting from the first condition, if it meets the condition then skip other conditions. If it doesn't meet the condition, then evaluates the second condition. If I check 'Enable overlapping of output populations', then it evaluates the condition like ' if then, if then, if then'.
I have no idea why I was getting only two records after the split if I unchecked 'Enable overlapping of output populations'. Any ideas? Thanks!