Uploaded image for project: 'ZABBIX BUGS AND ISSUES'
  1. ZABBIX BUGS AND ISSUES
  2. ZBX-5879

Possible ORA-01002 for a cursor that has been opened FOR UPDATE

XMLWordPrintable

    • Icon: Incident report Incident report
    • Resolution: Duplicate
    • Icon: Major Major
    • None
    • 2.0.4rc1, 2.1.0
    • Frontend (F)

      ociexecute(): ORA-01002: fetch out of sequence [include/db.inc.php:449]
      SQL error [ORA-01002: fetch out of sequence] in [SELECT nextid FROM ids WHERE nodeid=10 AND table_name='auditlog' AND field_name='auditid' FOR UPDATE]
      ocifetchinto(): ORA-01002: fetch out of sequence [include/db.inc.php:582]

      ORA-01002: fetch out of sequence
      Cause: This error means that a fetch has been attempted from a cursor which is no longer valid. Note that a PL/SQL cursor loop implicitly does fetches, and thus may also cause this error. There are a number of possible causes for this error, including: 1) Fetching from a cursor after the last row has been retrieved and the ORA-1403 error returned. 2) If the cursor has been opened with the FOR UPDATE clause, fetching after a COMMIT has been issued will return the error. 3) Rebinding any placeholders in the SQL statement, then issuing a fetch before reexecuting the statement.
      Action: 1) Do not issue a fetch statement after the last row has been retrieved - there are no more rows to fetch. 2) Do not issue a COMMIT inside a fetch loop for a cursor that has been opened FOR UPDATE. 3) Reexecute the statement after rebinding, then attempt to fetch again.

            Unassigned Unassigned
            dotneft Alexey Pustovalov
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: