This is more to document the trials and issues I encountered writing from a file geodatabase of polygons to an SDE instance with polygons. While one would think that polygons stored in one ESRI format would be fine when written to another and not need validation, that is not the case. Here are the issues i encountered when I switched to FME to find and bypass a bad feature that killed my dataload because of a tiny nearly collinear triangle with area of 1x10^-20...
First I tried to just insert straight from GDB to SDE. This gave me the error:
An error occurred while attempting to insert a row into the table 'PARCEL_DATA' using a cursor. The error number from ArcObjects is: '-2147215968'. The error message from ArcObjects is: {Linestring or poly boundary is self-intersecting}
Then I tried to run geometryvalidator, with these settings, sending both passing and repaired polygons to sde. This gave me the error : Cannot write a non-area feature to an area feature class
Further investigation revealed that Geometry Validator repairs some polygon pieces into fme_line objects and sends those along with the fme_polygon objects as an fme_aggregate.
A great option for the GeometryValidator might be to allow repaired parts to only include those of same geometry type as the originator.
So, I added a Testfilter, split everything by @GeometryType() = fme_polygon, fme_aggregate, fme_line, and sent the polygons on past into sde, and the aggregates into a GeometryPartExtractor to only keep the polygons, testfiltered them again to be sure they were fme_polygons, and then sent them on into SDE. This worked great through 22,000,000 features and then choked again with the error: An error occurred while attempting to insert a row into the table 'PARCEL_DATA' using a cursor. The error number from ArcObjects is: '-2147216041'. The error message from ArcObjects is: {Shape integrity error}
Surprise, there was a very tiny polygon that came out of the GeometryValidator that had an area of 1x10^-20, because it really had 4 collinear points in it, making it essentially a line, but officially still a polygon according to FME. I then added areacalculator + tester to both the passed geometry from geometryvalidator, and the repaired fme_polygons from the GeometryPartExtractor, verifying that no polygons with area < 0.000000000000001 were passed in to SDE, and at last my data load completed.
Hope that winds up helping someone, there was little to be seen in the docs on how geometryvalidator returns results as aggregates and the geometrypartextractor screenshot might be helpful to others.