My Oracle Support Banner

Why does NDBAPI Function nextResult() Return Strange Errors and Cause Crashes? (Doc ID 2080998.1)

Last updated on MARCH 08, 2017

Applies to:

MySQL Cluster - Version 7.2 and later
Information in this document applies to any platform.

Goal

The ndbapi manual states:

  Implicit NdbTransaction::execute() calls in scan and BLOB methods. Scan operations are executed in the same way as other operations,
  and also have implicit execute() calls within the NdbScanOperation::nextResult() method. When NdbScanOperation::nextResult()
  indicates failure (that is, if the method returns -1), the transaction object should be checked for an error.
  The NdbScanOperation may also contain the error, but only if the error is not operation-specific.

However, the following is occurring in the application:

Extract from ndbtransaction (code=4012):
theError = { status = NdbError::Success, classification = NdbError::NoError, code = 4012, mysql_code = 0, message = 0x... "No error", details = 0x0}

Extract from ndboperation (code=0), which a few function calls later caused a segfault:
theError = {status = NdbError::Success, classification = NdbError::NoError, code = 0, mysql_code = 0,  message = 0x... "No error", details = 0x0}

Why does the status show "No error" and return the 4012 error code and how does nextResult(true,true) work?
 

Solution

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Goal
Solution
References


This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.
My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.