Clone
 

ruoyu zuo <ruo-yu.zuo@hp.com> in Trafodion

Prepare "ROLLBACK" and "COMMIT WORK" at connection phase

Get "ROLLBACK WORK" and "COMMIT WORK" transaction prepared

during the connection phase. This is for Rowsets functionality

purpose, either the "COMMIT WORK" Transactioni need to be executed

to make it work, or "ROLLBACK WORK" shall be executed for failure.

PS: This includes a few interface changes related to Rowsets logic,

the rowset implementation code will be committed in another one or

more commits in the near future. This is step 1 check-in.

    • -0
    • +27
    /core/conn/jdbc_type2/native/CoreCommon.h
    • -9
    • +29
    /core/conn/jdbc_type2/native/SrvrCommon.h
    • -2
    • +45
    /core/conn/jdbc_type2/native/SrvrKds.cpp
    • -2
    • +14
    /core/conn/jdbc_type2/native/SrvrKds.h
Fix for bug 1446802

This is a fix on ODBC driver side specifically

against MXOSRVR recent change by bug 1438775

Change-Id: Id1dff8f45a9e121149781ba2a84c983f9265b90f

Fix for bug 1446802

This is a fix on ODBC driver side specifically

against MXOSRVR recent change by bug 1438775

Change-Id: Id1dff8f45a9e121149781ba2a84c983f9265b90f

(cherry picked from commit ca56ccb5b3c054a6ceb042b1d43faacb9564052b)

Changes for Bug #1403380

This is a re-commit.

Including cleanups for unused java references in native,

and made the native driver global objects(gJNICache, gSrvrGlobal)

be global for the process, gDescItems will be thread local.

Change-Id: I6ec2334e06c1bd346757fcf1e2816add99d9503f

    • -69
    • +4
    /conn/jdbc_type2/native/SQLMXCommonFunctions.cpp
    • -6
    • +0
    /conn/jdbc_type2/native/SQLMXDriver.cpp
    • -1
    • +1
    /conn/jdbc_type2/native/SrvrCommon.cpp
Change of bug 1404038

Enable ODBC Driver to support "UPSERT"

Change-Id: Ic2ce17a3061b97b15ab9789ef7bc18c9aab27260

Fix of bug #1328730:

JDBC T4 getTables methods only returns leading 100 rows,

if the total results is larger than 100. The second fetch

of JDBC Driver gets nothing. MXOSRVR actually fetch all rows

in statments data buffer, but in the second fetch, server

sends the buffer starts at the same address as last fetch, in

which the leading bytes of previous fetch are all already set

to '0'.

To fix this, uses a offset in statment to mark the start address

for next fetch of the buffer.

This passes dev unit tests for this specific problem, and QA

regression tests.

Change-Id: Ifd098dec38acb0ca7ff0cec153328d3b1349f3e1

==================================================================

OCT 29th:

Add initialization for SRVR_STMT_HDL.outputDataValue.pad_to_offset_8_

to 0, remove NULL(zero) validation for pSrvrStmt->outputDataValue._length

and pSrvrStmt->outputDataValue._buffer, for performance consideration.

    • -0
    • +1
    /conn/odbc/src/odbc/nsksrvrcore/csrvrstmt.cpp
    • -8
    • +17
    /conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp
Fix for bug 1354231.

Perviously, our driver uses NULL, which value is actually 0,

for socket descriptor validation.

POSIX actually allows 0 for a valid socket descriptor.

Thus when the app closes stdin, of which descriptor is 0,

the 1st socket created will use 0 as its descriptor.

The correct behavior is use -1 as invalid descriptor check.

New code initializes the m_hSocket with INVALID_SOCKET(defined

in unix_extra.h, which value is -1),

and as well reset to this value when the socket is closed.

Change-Id: I2f1455d2a107c55da2225313e990f811131a2183

    • -2
    • +2
    /conn/odbc/src/odbc/Common/TCPIPSystemDrvr.cpp
Bug 1327605: Correct the odbc message dll file name for LoadLibrary.

Summary: ODBC Windows driver returns msg "Message for ID[212] not found"

with every error when SQLGetDiagField is called for SQL_DIAG_MESSAGE_TEXT.

Root cause: the dll name used by function LoadLibrary() is incorrect,

thus the driver is not able to find and load the dll file of ODBC driver message.

Solution: Change the dll name to correct one.

Change-Id: Ie8bc71cd55e7bb88bef63f5183cca1fa70409cbc