[GIS] Why is the dissolve not outputting the features correctly

arcgis-10.2dissolve

I have a parcel polygon layer consisting of ~30,000 polygons that can have one of three values for city limits: 0, 1, and null. I execute a dissolve on this layer with "Create Multipart Features" checked. The output should be only three polygons -> a 0 polygon, a 1 polygon, and a null polygon. However, when I run dissolve, the result creates 5 polygons instead:

enter image description here

Here is a picture of the end dissolve layer overlaying the labled parcel layer:

enter image description here

as you can see in the picture, all the 0's should be one contiguous multipart parcel with joining lines removed, but instead there are separations.

Things I have tried so far to no avail:

Validated a topology with two rules: Must Not Overlap and Must Not Have Gaps

Used the Repair Geometry tool.

Per request, I have copied the parameters from the geoprocessing task. It is an ordinary polygon feature class in a personal geodatabase:

arcpy.Dissolve_management("C:/Users/cbarber/Desktop/ParcelFabric.mdb/Parcels/ParcelFabric_Parcels","C:/Users/cbarber/Documents/ArcGIS/Default.gdb/ParcelFabric_Parcels_Dissolv8","City_Limits","#","MULTI_PART","DISSOLVE_LINES")

Best Answer

This was solved by a colleague of mine who noticed that errors were only happening in areas with polygons with a value of 0. Apparently if you are dissolving on a numerical field having a "0" value in the dissolve field causes the dissolve behavior to act strangely (we aren't sure if this has to do with also having a null value in this field). We did a quick field calculate to reclass all "0" values as "2" and voila, the dissolve worked perfectly.

We still have no clue as to why the dissolve tool acts strangely when dissolving on "0" values. GIS can be weird sometimes.

Related Question