Tom Savor wrote:
>For us, the programs that run in Batch and Online are DB2 i/o
>programs.  So your solution wont work for us as SQL and LP(64)
>are in-compatible.

Don Poitras wrote:
>There is a painful work-around. Use an assembler stub to call the DB2
>API in amode 31. Allocate all storage that will be written to or read
>from DB2 in storage allocated below the bar. I've done this in C, so
>I have to think it's possible to do in COBOL. I see there is an
>ALLOCATE statement that can be used to get dynamic storage below the
>bar. In C, we use __malloc31().
>
>Of course, it would be much better if DB2 would provide a 64-bit API.
>Now that C, COBOL and PL1 are able to run amode=64, I think there's
>a good argument to be made that this should be a priority.

I personally agree, Don. I encourage RFE submissions:

https://www.ibm.com/developerworks/rfe/

The workaround you describe is one option, fairly well traveled. Here are a
couple other possibilities that come to mind, "thinking out loud" again:

1. Use an AMODE 64 C or C++ stub that accesses Db2 via the 64-bit ODBC
driver, then your AMODE 64 COBOL program interfaces to that stub. There's
also an AMODE 31 COBOL -> AMODE 31 C/C++ stub -> AMODE 31 ODBC driver path
available. One current, documented limitation here is that data must still
fit below the 2GB bar either way.

2. A Java stub (via JDBC), although this one might need a bit of
"situationally aware" source code since COBOL's "INVOKE" is not available
for use within CICS.

3. The Db2 Native REST Services.

--------------------------------------------------------------------------------------------------------
Timothy Sipples
IT Architect Executive, Digital Asset & Other Industry Solutions, IBM Z &
LinuxONE
--------------------------------------------------------------------------------------------------------

E-Mail: [email protected]

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to