That's because you are putting the list in your dataHistory table: this puts a reference to the list, not a copy of the list. So when you retrieve the list in newData you are actually getting the original. You should store a copy:
if new is not None:
self.dataHistory.append(new[:]) # copy of new