IC94390: Database Toolkit ODBC operators with an optional output port fail to compile

 

APAR status

  • Closed as program error.

Error description

  • If an application contains an ODBC operator that uses the
    optional output port, the generated C++ code fails to compile.
    Affected operators include ODBCAppend, ODBCEnrich, ODBCRun, and
    ODBCSource. For example, an application that contains the
    following code compiles and runs successfully in InfoSphere
    Streams 2.0 but fails to compile in InfoSphere Streams 3.0:
    ...
    stream <tuple<MessageStream> errorTuple, int32 sqlCode, rstring
    sqlMessage, rstring sqlState> ErrorStream =
    ODBCAppend(TweakedMessageStream) {
    param
    connectionDocument : $connection;
    connection: $database;
    access: $table; }
    ...
    The following compilation errors occur:
    [CXX-operator] FirewallFlowTableAppend.ErrorStream
    src/operator/DNSTableAppend/ErrorStream.cpp: In member function
     virtual void
    SPL::_Operator::DNSTableAppend::ErrorStream$OP::process(uint32_t
    ) :
    src/operator/DNSTableAppend/ErrorStream.cpp:272: error:
     tuple  was not declared in this scope
    

Local fix

  • To work around the problem, change your application so that
    instead of processing database errors immediately you scan the
    InfoSphere Streams log files for database error messages after
    the application ends.
    For example:
    ...
    /* output tuple type from Streams 2 does not compile in Streams
    3
    stream <tuple<MessageStream> errorTuple, int32 sqlCode, rstring
    sqlMessage, rstring sqlState> ErrorStream =
    ODBCAppend(TweakedMessageStream) {
    */
    () as ErrorSink = ODBCAppend(TweakedMessageStream) {
    param
    connectionDocument : $connection;
    connection: $database;
    access: $table; }
    ...
    

Problem summary

  • Users Affected: Users that are compiling applications that use
    ODBC operators from the Database Toolkit. In particular, this
    problem occurs when you use the optional output port.
    

Problem conclusion

  • This problem is fixed in Version 3.0 Fix Pack 2 and later
    releases.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IC94390

  • Reported component name

    INFOSPHERE STRE

  • Reported component ID

    5724Y95IS

  • Reported release

    300

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-07-25

  • Closed date

    2013-08-09

  • Last modified date

    2013-08-09

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Modules/Macros

  • UNKNOWN
    

Fix information

  • Fixed component name

    INFOSPHERE STRE

  • Fixed component ID

    5724Y95IS

Applicable component levels

  • R300 PSY

       UP

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

InfoSphere Streams

Software version:

3.0

Reference #:

IC94390

Modified date:

2013-08-09

Translate my page

Machine Translation

Content navigation