StopIteration: iteration not started Error when zipping a cursor using arcpy.da.UpdateCursor

by Steve   Last Updated September 05, 2018 18:22 PM

I've run into a StopIteration: iteration not started error while trying to order a table using an update cursor.

Is this caused by zipping the cursor together? I've tried updating a different table that's identical to the one I ordered using a search cursor. The error persisted. There's not a lot of good information about this error so I've decided to write this question primarily as a reference for others who run into this problem.

Here's the code I'm running on a FileGeoDatabase for now

with arcpy.da.SearchCursor(
    in_table = copy_fc,
    field_names = fields, where_clause = "",
    sql_clause = (None, "order by DATE")) as ordered_cursor:

    sorted = [row for row in ordered_cursor]

sorted_df = pd.DataFrame.from_records(
    data = sorted, columns = fields)

print sorted_df.size

fc = r"U:\R\A\qt\3.14159\;)"

with arcpy.da.UpdateCursor(in_table = fc, field_names = fields)\
    as cursor:

    for (row, item) in zip(
        cursor, building_sorted_df.itertuples(index = False)):
        row = item
        #Error happens on line below
        cursor.updateRow(row)

print "Finished"

Please note, this is not a duplicate because I'm storing my values in a pandas data frame instead of trying to do pairwise iteration, my cursors are written correctly, and I'm not writing to a table while I'm reading from it.

Tags : arcpy pandas


Related Questions


Updated November 06, 2018 12:22 PM

Updated July 12, 2018 23:22 PM

Updated July 23, 2018 15:22 PM

Updated September 07, 2018 15:22 PM

Updated November 26, 2018 15:22 PM