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;