Repository: trafodion
Updated Branches:
  refs/heads/master 7fba1c662 -> 8f18e5a34


[TRAFODION-3180] At times establishing a JDBC/ODBC connection takes observably 
long time

When the sock stream is in use, socket close is kept pending in a queue till it 
can
be closed. But, the sockets from this queue is never closed. Added code
to close the sockets from this queue at the time of creating the socket stream 
next
time.


Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/d51fe9e6
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/d51fe9e6
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/d51fe9e6

Branch: refs/heads/master
Commit: d51fe9e66f0b09809d803970a952496fdd122a48
Parents: 10986d3
Author: selvaganesang <selva.govindara...@esgyn.com>
Authored: Mon Aug 13 23:45:47 2018 +0000
Committer: selvaganesang <selva.govindara...@esgyn.com>
Committed: Mon Aug 13 23:45:47 2018 +0000

----------------------------------------------------------------------
 core/sqf/src/seabed/src/sockstream.cpp | 1 +
 core/sqf/src/seabed/src/stream.cpp     | 2 ++
 2 files changed, 3 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/d51fe9e6/core/sqf/src/seabed/src/sockstream.cpp
----------------------------------------------------------------------
diff --git a/core/sqf/src/seabed/src/sockstream.cpp 
b/core/sqf/src/seabed/src/sockstream.cpp
index 41fa7a5..83ba1aa 100644
--- a/core/sqf/src/seabed/src/sockstream.cpp
+++ b/core/sqf/src/seabed/src/sockstream.cpp
@@ -431,6 +431,7 @@ SB_Trans::Sock_Stream::create(const char           *pp_name,
         pp_sock->set_nonblock();
         pp_sock->event_init(lp_stream->ip_sock_eh);
     }
+    SB_Trans::Trans_Stream::delete_streams(true);
     return lp_stream;
 }
 

http://git-wip-us.apache.org/repos/asf/trafodion/blob/d51fe9e6/core/sqf/src/seabed/src/stream.cpp
----------------------------------------------------------------------
diff --git a/core/sqf/src/seabed/src/stream.cpp 
b/core/sqf/src/seabed/src/stream.cpp
index fccbccd..9699e33 100644
--- a/core/sqf/src/seabed/src/stream.cpp
+++ b/core/sqf/src/seabed/src/stream.cpp
@@ -610,6 +610,7 @@ void SB_Trans::Trans_Stream::delete_streams(bool 
pv_ref_zero) {
                                            "Not deleting stream=%s, 
stream-ref=%d\n",
                                            lp_stream->get_name(),
                                            lv_stream_ref);
+                    lv_del_q.add(&lp_stream->iv_del_link);
                 }
             } else {
                 if (gv_ms_trace_ref)
@@ -633,6 +634,7 @@ void SB_Trans::Trans_Stream::delete_streams(bool 
pv_ref_zero) {
                                        "Not deleting stream=%s, 
stream-ref=%d\n",
                                        lp_stream->get_name(),
                                        lv_stream_ref);
+                lv_del_q.add(&lp_stream->iv_del_link);
             }
         }
     }

Reply via email to