You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by sa...@apache.org on 2018/06/13 17:54:06 UTC
[2/3] trafodion git commit: Fix jdbct4 code
Fix jdbct4 code
Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/32c92c35
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/32c92c35
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/32c92c35
Branch: refs/heads/master
Commit: 32c92c355895c38600cc82100ef9ec3f6842e551
Parents: 4ffb07a
Author: Li Ze <ze...@esgyn.cn>
Authored: Fri Jun 1 14:49:02 2018 +0800
Committer: Li Ze <ze...@esgyn.cn>
Committed: Fri Jun 1 14:49:02 2018 +0800
----------------------------------------------------------------------
.../java/org/trafodion/jdbc/t4/InitializeDialogueMessage.java | 2 --
.../main/java/org/trafodion/jdbc/t4/InterfaceConnection.java | 1 +
.../jdbcT4/src/main/java/org/trafodion/jdbc/t4/TRANSPORT.java | 1 +
core/conn/odbc/src/odbc/Common/Global.h | 1 +
core/conn/odbc/src/odbc/nsksrvr/Interface/odbcs_srvr.cpp | 2 --
core/conn/odbc/src/odbc/nsksrvr/SrvrConnect.cpp | 2 +-
core/conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp | 5 +++++
7 files changed, 9 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InitializeDialogueMessage.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InitializeDialogueMessage.java b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InitializeDialogueMessage.java
index 289f1d8..2971baa 100644
--- a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InitializeDialogueMessage.java
+++ b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InitializeDialogueMessage.java
@@ -40,7 +40,6 @@ class InitializeDialogueMessage {
wlength += TRANSPORT.size_int; // dialogueId
wlength += TRANSPORT.size_int; // optionFlags1
wlength += TRANSPORT.size_int; // optionFlags2
- wlength += TRANSPORT.size_int; // clipVarchar
wlength += sessionBytes.length;
wlength += clientUserBytes.length;
@@ -61,7 +60,6 @@ class InitializeDialogueMessage {
{
buf.insertString(clientUserBytes);
}
- buf.insertInt(inContext.clipVarchar);
return buf;
}
}
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceConnection.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceConnection.java b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceConnection.java
index da3dcae..f0be4fd 100644
--- a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceConnection.java
+++ b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceConnection.java
@@ -913,6 +913,7 @@ class InterfaceConnection {
this.oldEncryptPassword();
this.initDiag(false,false);
}
+ this.setConnectionAttr(this._t4Conn, TRANSPORT.SQL_ATTR_CLIPVARCHAR, this.inContext.clipVarchar, String.valueOf(this.inContext.clipVarchar));
}
// @deprecated
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TRANSPORT.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TRANSPORT.java b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TRANSPORT.java
index d297c31..4346cc2 100644
--- a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TRANSPORT.java
+++ b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TRANSPORT.java
@@ -172,6 +172,7 @@ class TRANSPORT {
static final short SRVR_API_UPDATELOB = 3031;
static final short SQL_ATTR_ROWSET_RECOVERY = 2000;
+ static final short SQL_ATTR_CLIPVARCHAR = 2001;
static final int MAX_REQUEST = 300;
static final int MAX_BUFFER_LENGTH = 32000;
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/odbc/src/odbc/Common/Global.h
----------------------------------------------------------------------
diff --git a/core/conn/odbc/src/odbc/Common/Global.h b/core/conn/odbc/src/odbc/Common/Global.h
index fb29d50..37274f8 100644
--- a/core/conn/odbc/src/odbc/Common/Global.h
+++ b/core/conn/odbc/src/odbc/Common/Global.h
@@ -216,6 +216,7 @@ class ODBCMXTraceMsg;
#define RES_ESTIMATEDCOST 0
#define SQL_ATTR_ROWSET_RECOVERY 2000
+#define SQL_ATTR_CLIPVARCHAR 2001
// session statistics values range from 0x00000001 thru 0x00000128
#define SESSTAT_LOGINFO 1
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/odbc/src/odbc/nsksrvr/Interface/odbcs_srvr.cpp
----------------------------------------------------------------------
diff --git a/core/conn/odbc/src/odbc/nsksrvr/Interface/odbcs_srvr.cpp b/core/conn/odbc/src/odbc/nsksrvr/Interface/odbcs_srvr.cpp
index ff7e6d0..079277a 100644
--- a/core/conn/odbc/src/odbc/nsksrvr/Interface/odbcs_srvr.cpp
+++ b/core/conn/odbc/src/odbc/nsksrvr/Interface/odbcs_srvr.cpp
@@ -616,8 +616,6 @@ SQLCONNECT_IOMessage(
else
inContext.clientUserName = NULL;
- inContext.clipVarchar = *(IDL_long *)(curptr+inputPosition);
- inputPosition += sizeof(inContext.clipVarchar);
odbc_SQLSvc_InitializeDialogue_ame_(
objtag_
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/odbc/src/odbc/nsksrvr/SrvrConnect.cpp
----------------------------------------------------------------------
diff --git a/core/conn/odbc/src/odbc/nsksrvr/SrvrConnect.cpp b/core/conn/odbc/src/odbc/nsksrvr/SrvrConnect.cpp
index e37d8cc..5389225 100644
--- a/core/conn/odbc/src/odbc/nsksrvr/SrvrConnect.cpp
+++ b/core/conn/odbc/src/odbc/nsksrvr/SrvrConnect.cpp
@@ -3782,7 +3782,7 @@ odbc_SQLSvc_InitializeDialogue_ame_(
if ((srvrGlobal->drvrVersion.componentId == JDBC_DRVR_COMPONENT) && ((long) (inContext->idleTimeoutSec) > JDBC_DATASOURCE_CONN_IDLE_TIMEOUT))
srvrGlobal->javaConnIdleTimeout = inContext->idleTimeoutSec;
- srvrGlobal->clipVarchar = inContext->clipVarchar;
+ srvrGlobal->clipVarchar = 0;
// collect information for resource statistics
char nodename[100];
short error;
http://git-wip-us.apache.org/repos/asf/trafodion/blob/32c92c35/core/conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp
----------------------------------------------------------------------
diff --git a/core/conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp b/core/conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp
index 987edd4..0be0072 100644
--- a/core/conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp
+++ b/core/conn/odbc/src/odbc/nsksrvrcore/srvrothers.cpp
@@ -5692,6 +5692,7 @@ odbc_SQLSvc_SetConnectionOption_sme_(
switch (connectionOption) {
//Special Case//
+
case SQL_ACCESSMODE_AND_ISOLATION:
switch (optionValueNum) {
case SQL_TXN_READ_UNCOMMITTED:
@@ -6156,6 +6157,10 @@ odbc_SQLSvc_SetConnectionOption_sme_(
case WMS_QUERY_MONITORING:
strcpy(sqlString, "CONTROL QUERY DEFAULT WMS_QUERY_MONITORING 'OFF'");
break;
+ case SQL_ATTR_CLIPVARCHAR:
+ srvrGlobal->clipVarchar = optionValueNum;
+ sqlStringNeedsExecution = false;
+ break;
default:
exception_->exception_nr = odbc_SQLSvc_SetConnectionOption_ParamError_exn_;
exception_->u.ParamError.ParamDesc = SQLSVC_EXCEPTION_INVALID_CONNECTION_OPTION;