Maybe you are right. The nature of our problem may be a little different, but I also see duplicate rows being generated when they are not supposed to be according to my back-end coding and they get displayed on my DataGrid just as you described above. I even tried to echo back the variables I passed to the HTTPService request, and they bring back the way they should be instead of all the entries.
I am experiencing some problems myself that I cannot explain from what I see from my DataGrid, since those rows get generated only through Flex, but they don't when I just run it from PHP.
Perhaps you might be able to tell me how I could solve my problem here?
1. Create a new collection as the data provider for the datagrid. Don't assign directly the collection coming from the server
2. Define a <Binding> tag in order to detect changes to the collection and set the destination to a setter function
3. In the setter, reset the dataprovider collection, go through each element in the incoming collection from the server, check if the element is already present in the dataprovider collection based on the entity key and add it if not present.