I observed that data record that is found last in PSA based on record number is overwriting previous master data. Since the records are in descending order by end date, my master data is updating with oldest data.
PSA data is matching with the extraction checker in source.
Peculiar thing is that when I try to test those particular records based on the selection, the records are coming up in correct order.