• unknown's avatar
    Bug #25487 deleting ndb_cluster_connection object takes long time · 31126248
    unknown authored
      
      aim is to:
      a) if set_connect_timeout called, timeout connect attempt (for retry on
      next call) after timeout period
      b) preserve existing blocking behaviour otherwise (for, e.g. mgmapi)
      
      Related to customer issue with long time deleting ndb_cluster_connection
      object. believe we're hanging on the connect(2) call until timeout (when
      we then realise we should exit the thread).
    
    
    ndb/include/mgmapi/mgmapi.h:
      add ndb_mgm_set_connect_timeout
    ndb/include/util/SocketClient.hpp:
      add timeout (seconds) for max time to wait for connection
    ndb/src/common/transporter/Transporter.cpp:
      set limit on amount of time we'll wait for tcp connect
    ndb/src/common/util/SocketClient.cpp:
      only try to connect for a maximum of timeout time
    ndb/src/mgmapi/mgmapi.cpp:
      add ndb_mgm_set_connect_timeout
    31126248
mgmapi.cpp 66.4 KB