List:Commits« Previous MessageNext Message »
From:antony Date:August 13 2007 6:07pm
Subject:bk commit into 5.0 tree (antony:1.2490)
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of antony. When antony does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-08-13 09:07:16-07:00, antony@stripped +29 -0
  more adjustments for building ndb with cmake

  CMakeLists.txt@stripped, 2007-08-13 09:06:16-07:00, antony@stripped +2 -5
    tidyup

  config.cmake@stripped, 2007-08-13 09:06:16-07:00, antony@stripped +1 -2
    fix regexp

  include/my_global.h@stripped, 2007-08-13 09:06:17-07:00, antony@stripped +3 -0
    declare a few more socket constants

  mysql-test/mysql-test-run.pl@stripped, 2007-08-13 09:06:17-07:00, antony@stripped
+8 -5
    allow test run to work for windows builds

  ndb/config/type_ndbapitest.cmake@stripped, 2007-08-13 09:06:17-07:00,
antony@stripped +4 -0
    needs winsock

  ndb/config/type_ndbapitools.cmake@stripped, 2007-08-13 09:06:17-07:00,
antony@stripped +4 -2
    needs winsock

  ndb/src/common/mgmcommon/ConfigRetriever.cpp@stripped, 2007-08-13 09:06:17-07:00,
antony@stripped +1 -1
    use socket_errno

  ndb/src/common/portlib/NdbCondition.c@stripped, 2007-08-13 09:06:18-07:00,
antony@stripped +1 -0
    don't leave result undefined

  ndb/src/common/portlib/NdbTCP.cpp@stripped, 2007-08-13 09:06:18-07:00,
antony@stripped +6 -6
    enable debugging

  ndb/src/common/portlib/NdbThread.c@stripped, 2007-08-13 09:06:18-07:00,
antony@stripped +1 -1
    fix

  ndb/src/common/transporter/TransporterRegistry.cpp@stripped, 2007-08-13 09:06:18-07:00,
antony@stripped +1 -1
    use socket_errno

  ndb/src/common/util/SocketClient.cpp@stripped, 2007-08-13 09:06:19-07:00,
antony@stripped +46 -22
    add some debugging
    use socket_errno

  ndb/src/common/util/SocketServer.cpp@stripped, 2007-08-13 09:06:19-07:00,
antony@stripped +39 -12
    use socket_errno for socket errors
    add some debugging
    make infinite loop cost less.

  ndb/src/common/util/socket_io.cpp@stripped, 2007-08-13 09:06:19-07:00,
antony@stripped +3 -3
    use socket_errno for socket errors

  ndb/src/kernel/CMakeLists.txt@stripped, 2007-08-13 09:06:19-07:00, antony@stripped
+33 -33
    change

  ndb/src/kernel/blocks/dbdict/CMakeLists.txt@stripped, 2007-08-13 09:06:19-07:00,
antony@stripped +4 -2
    needs winsock

  ndb/src/kernel/blocks/dbdih/CMakeLists.txt@stripped, 2007-08-13 09:06:20-07:00,
antony@stripped +4 -2
    needs winsock

  ndb/src/kernel/blocks/dblqh/CMakeLists.txt@stripped, 2007-08-13 09:06:20-07:00,
antony@stripped +4 -2
    needs winsock

  ndb/src/mgmclient/CMakeLists.txt@stripped, 2007-08-13 09:06:20-07:00,
antony@stripped +5 -2
    needs winsock

  ndb/src/mgmsrv/CMakeLists.txt@stripped, 2007-08-13 09:06:20-07:00, antony@stripped
+5 -2
    needs winsock

  ndb/test/ndbapi/CMakeLists.txt@stripped, 2007-08-13 09:06:20-07:00, antony@stripped
+4 -4
    disable a few tests from building for now

  ndb/test/ndbapi/bench/mainAsyncGenerator.cpp@stripped, 2007-08-13 09:06:21-07:00,
antony@stripped +1 -1
    change snprintf --> BaseString::snprintf

  ndb/test/ndbapi/bench/ndb_error.hpp@stripped, 2007-08-13 09:06:21-07:00,
antony@stripped +1 -1
    change snprintf --> BaseString::snprintf

  ndb/test/ndbapi/bench/userInterface.cpp@stripped, 2007-08-13 09:06:21-07:00,
antony@stripped +4 -2
    tidy up

  ndb/test/ndbapi/testMgm.cpp@stripped, 2007-08-13 09:06:20-07:00, antony@stripped +1
-0
    add a return to quiten compilers

  ndb/test/ndbapi/testOIBasic.cpp@stripped, 2007-08-13 09:06:21-07:00,
antony@stripped +5 -0
    windows uses rand() and srand()

  ndb/test/ndbapi/testScanFilter.cpp@stripped, 2007-08-13 09:06:21-07:00,
antony@stripped +10 -10
    change snprintf --> BaseString::snprintf
    tidyup for where compiler cannot evaluate const pow() at compile time.

  ndb/test/tools/transproxy.cpp@stripped, 2007-08-13 09:06:21-07:00, antony@stripped
+7 -7
    use socket_errno for socket based errno

  sql/CMakeLists.txt@stripped, 2007-08-13 09:06:22-07:00, antony@stripped +7 -6
    move ndb includes.

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	antony
# Host:	pcg5ppc.xiphis.org
# Root:	/private/Network/Servers/anubis.xiphis.org/home/antony/work/ndb-5.0-2

--- 1.3/ndb/test/ndbapi/testScanFilter.cpp	2007-04-26 07:48:50 -07:00
+++ 1.4/ndb/test/ndbapi/testScanFilter.cpp	2007-08-13 09:06:21 -07:00
@@ -49,7 +49,7 @@ const char COL_LEN = 7;
 * there are six columns, 'i', 'j', 'k', 'l', 'm', 'n', and each on is equal to 1 or 1,
 * Since each tuple should be unique in this case, then TUPLE_NUM = 2 power 6 = 64 
 */
-const int TUPLE_NUM = (int)pow(2, COL_LEN-1);    
+const int TUPLE_NUM = (1 << (COL_LEN-1));
 
 /*
 * the recursive level of random scan filter, can 
@@ -289,7 +289,7 @@ int get_rand_col_str(char *str)
   srand(num*time(NULL));
   len = rand() % col_len + 1;
   change_col_order();
-  snprintf(str, len+1, "%s", col_string);  //len+1, including '\0'
+  BaseString::snprintf(str, len+1, "%s", col_string);  //len+1, including '\0'
   return len;
 }
 
@@ -305,7 +305,7 @@ int get_rand_op_str(char *str)
   len2 = get_rand_col_str(temp+len1);
   len = len1 + len2;
   temp[len] = 'x';
-  snprintf(str, len+1+1, "%s", temp);  //len+1, including '\0'
+  BaseString::snprintf(str, len+1+1, "%s", temp);  //len+1, including '\0'
   return len+1;
 }
 
@@ -319,10 +319,10 @@ int get_rand_op_str(char *str)
 int replace_a_to_str(char *source, int pos, char *newstr)
 {
   char temp[MAX_STR_LEN];
-  snprintf(temp, pos+1, "%s", source);
-  snprintf(temp+pos, strlen(newstr)+1, "%s", newstr);
-  snprintf(temp+pos+strlen(newstr), strlen(source)-pos, "%s", source+pos+1);
-  snprintf(source, strlen(temp)+1, "%s", temp); 
+  BaseString::snprintf(temp, pos+1, "%s", source);
+  BaseString::snprintf(temp+pos, strlen(newstr)+1, "%s", newstr);
+  BaseString::snprintf(temp+pos+strlen(newstr), strlen(source)-pos, "%s", source+pos+1);
+  BaseString::snprintf(source, strlen(temp)+1, "%s", temp); 
   return strlen(source);
 }
 
@@ -479,7 +479,7 @@ int get_column_id(char ch)
 */
 bool check_col_equal_one(int tuple_no, int col_id)
 {
-  int i = (int)pow(2, 6 - col_id);
+  int i = 1 << (6 - col_id);
   int j = tuple_no / i;
   if(j % 2)
     return true;
@@ -703,7 +703,7 @@ void ndbapi_tuples(Ndb *ndb, char *str, 
     col[i] = table->getColumn(COL_NAME[i]);
 	  if(!col[i]) 
     {
-      snprintf(tmp, 128, "Can't get column %s", COL_NAME[i]);
+      BaseString::snprintf(tmp, 128, "Can't get column %s", COL_NAME[i]);
       ERR_EXIT(dict, tmp);
     }
   }
@@ -730,7 +730,7 @@ void ndbapi_tuples(Ndb *ndb, char *str, 
     rec[i] = scan->getValue(COL_NAME[i]);
 	  if(!rec[i]) 
     {
-      snprintf(tmp, 128, "Can't get rec of %s", COL_NAME[i]);
+      BaseString::snprintf(tmp, 128, "Can't get rec of %s", COL_NAME[i]);
       ERR_EXIT(scan, tmp);
     }
   }

--- 1.1/config.cmake	2007-08-09 01:26:18 -07:00
+++ 1.2/config.cmake	2007-08-13 09:06:16 -07:00
@@ -43,7 +43,7 @@ STRING(REGEX REPLACE ".*DOT_FRM_VERSION=
         "\\1" PARSE_FRM_VERSION "${CONFIGURE_IN}")
 STRING(REGEX REPLACE ".*MYSQL_TCP_PORT_DEFAULT=([0-9]+).*"
         "\\1" PARSE_TCP_PORT "${CONFIGURE_IN}")
-STRING(REGEX REPLACE ".*MYSQL_UNIX_ADDR_DEFAULT=([^\r\n]+).*"
+STRING(REGEX REPLACE ".*MYSQL_UNIX_ADDR_DEFAULT=\"([^\"]+)\".*"
         "\\1" PARSE_UNIX_ADDR "${CONFIGURE_IN}")
 
 # Set some constant values
@@ -83,7 +83,6 @@ SET(WITH_EXAMPLE_STORAGE_ENGINE FALSE CA
 SET(WITH_FEDERATED_STORAGE_ENGINE FALSE CACHE BOOL "Include Federated")
 SET(WITH_INNOBASE_STORAGE_ENGINE FALSE CACHE BOOL "Include InnoDB engine")
 SET(WITH_NDBCLUSTER_STORAGE_ENGINE FALSE CACHE BOOL "Include NDB Cluster")
-SET(WITH_PARTITION_STORAGE_ENGINE FALSE CACHE BOOL "Include Partitioning")
 
 SET(NDB_SCI_INCLUDES "" CACHE STRING "")
 SET(NDB_SCI_LIBS "" CACHE STRING "")

--- 1.1/ndb/config/type_ndbapitest.cmake	2007-08-09 01:26:17 -07:00
+++ 1.2/ndb/config/type_ndbapitest.cmake	2007-08-13 09:06:17 -07:00
@@ -19,6 +19,10 @@ LINK_LIBRARIES(ndbNDBT
                mysys
                strings
                ${NDB_SCI_LIBS})
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
+
 
 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}
                     ${CMAKE_BINARY_DIR}/include

--- 1.1/ndb/config/type_ndbapitools.cmake	2007-08-09 01:26:17 -07:00
+++ 1.2/ndb/config/type_ndbapitools.cmake	2007-08-13 09:06:17 -07:00
@@ -17,8 +17,10 @@ LINK_LIBRARIES(ndbclient
                dbug
                mysys
                strings
-               ${NDB_SCI_LIBS}
-               wsock32)
+               ${NDB_SCI_LIBS})
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
 
 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}
                     ${CMAKE_BINARY_DIR}/include

--- 1.1/ndb/src/kernel/CMakeLists.txt	2007-08-09 01:26:15 -07:00
+++ 1.2/ndb/src/kernel/CMakeLists.txt	2007-08-13 09:06:19 -07:00
@@ -37,39 +37,39 @@ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOUR
                     ${CMAKE_CURRENT_SOURCE_DIR}/blocks/dbtux)
 
 
+LINK_LIBRARIES(ndbcmvmi
+               ndbdbacc
+               ndbdbdict
+               ndbdbdih
+               ndbdblqh
+               ndbdbtc
+               ndbdbtup
+               ndbndbfs
+               ndbndbcntr
+               ndbqmgr
+               ndbtrix
+               ndbbackup
+               ndbdbutil
+               ndbsuma
+               ndbdbtux
+               ndbkernel
+               ndberror
+               ndbtransport
+               ndbtrace
+               ndbsignaldata
+               ndblogger
+               ndbmgmsrv
+               ndbmgmapi
+               ndbportlib
+               ndbgeneral
+               dbug
+               mysys
+               strings
+               ${NDB_SCI_LIBS})
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
+
 ADD_EXECUTABLE(ndbd
                main.cpp
                SimBlockList.cpp)
-
-TARGET_LINK_LIBRARIES(ndbd
-                      ndbcmvmi
-                      ndbdbacc
-                      ndbdbdict
-                      ndbdbdih
-                      ndbdblqh
-                      ndbdbtc
-                      ndbdbtup
-                      ndbndbfs
-                      ndbndbcntr
-                      ndbqmgr
-                      ndbtrix
-                      ndbbackup
-                      ndbdbutil
-                      ndbsuma
-                      ndbdbtux
-                      ndbkernel
-                      ndberror
-                      ndbtransport
-                      ndbtrace
-                      ndbsignaldata
-                      ndblogger
-                      ndbmgmsrv
-                      ndbmgmapi
-                      ndbportlib
-                      ndbgeneral
-                      dbug
-                      mysys
-                      strings
-                      ${NDB_SCI_LIBS}
-                      wsock32)
-        

--- 1.1/ndb/src/kernel/blocks/dbdict/CMakeLists.txt	2007-08-09 01:26:14 -07:00
+++ 1.2/ndb/src/kernel/blocks/dbdict/CMakeLists.txt	2007-08-13 09:06:19 -07:00
@@ -20,8 +20,10 @@ LINK_LIBRARIES(ndbgeneral
                ndbportlib
                dbug
                mysys
-               strings
-               wsock32) 
+               strings)
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
 
 ADD_LIBRARY(ndbdbdict STATIC
             Dbdict.cpp)

--- 1.1/ndb/src/kernel/blocks/dbdih/CMakeLists.txt	2007-08-09 01:26:14 -07:00
+++ 1.2/ndb/src/kernel/blocks/dbdih/CMakeLists.txt	2007-08-13 09:06:20 -07:00
@@ -17,8 +17,10 @@
 INCLUDE(${CMAKE_SOURCE_DIR}/ndb/config/type_kernel.cmake)
 
 LINK_LIBRARIES(ndbgeneral
-               ndbportlib
-               wsock32) 
+               ndbportlib)
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
 
 ADD_LIBRARY(ndbdbdih STATIC
             DbdihInit.cpp

--- 1.1/ndb/src/kernel/blocks/dblqh/CMakeLists.txt	2007-08-09 01:26:14 -07:00
+++ 1.2/ndb/src/kernel/blocks/dblqh/CMakeLists.txt	2007-08-13 09:06:20 -07:00
@@ -17,8 +17,10 @@
 INCLUDE(${CMAKE_SOURCE_DIR}/ndb/config/type_kernel.cmake)
 
 LINK_LIBRARIES(ndbgeneral
-               ndbportlib
-               wsock32)
+               ndbportlib)
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
 
 ADD_LIBRARY(ndbdblqh STATIC
             DblqhInit.cpp DblqhMain.cpp)

--- 1.1/ndb/src/mgmclient/CMakeLists.txt	2007-08-09 01:26:12 -07:00
+++ 1.2/ndb/src/mgmclient/CMakeLists.txt	2007-08-13 09:06:20 -07:00
@@ -27,8 +27,11 @@ LINK_LIBRARIES(ndbmgmclient
                ndbgeneral
                dbug
                mysys
-               strings
-               wsock32)
+               strings)
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
+
 
 ADD_EXECUTABLE(ndb_mgm
                main.cpp)

--- 1.1/ndb/src/mgmsrv/CMakeLists.txt	2007-08-09 01:26:10 -07:00
+++ 1.2/ndb/src/mgmsrv/CMakeLists.txt	2007-08-13 09:06:20 -07:00
@@ -25,8 +25,11 @@ LINK_LIBRARIES(ndbmgmclient
                dbug
                mysys
                strings
-               ${NDB_SCI_LIBS}
-               wsock32)
+               ${NDB_SCI_LIBS})
+IF(WIN32)
+LINK_LIBRARIES(wsock32)
+ENDIF(WIN32)
+
 
 ADD_EXECUTABLE(ndb_mgmd
                MgmtSrvr.cpp

--- 1.1/ndb/test/ndbapi/CMakeLists.txt	2007-08-09 01:26:11 -07:00
+++ 1.2/ndb/test/ndbapi/CMakeLists.txt	2007-08-13 09:06:20 -07:00
@@ -30,7 +30,7 @@ ADD_EXECUTABLE(flexTT flexTT.cpp)
 ADD_EXECUTABLE(testBackup testBackup.cpp)
 ADD_EXECUTABLE(testBasic testBasic.cpp)
 ADD_EXECUTABLE(testBasicAsynch testBasicAsynch.cpp)
-ADD_EXECUTABLE(testBlobs testBlobs.cpp)
+#ADD_EXECUTABLE(testBlobs testBlobs.cpp)
 ADD_EXECUTABLE(testDataBuffers testDataBuffers.cpp)
 ADD_EXECUTABLE(testDict testDict.cpp)
 ADD_EXECUTABLE(testIndex testIndex.cpp)
@@ -49,7 +49,7 @@ ADD_EXECUTABLE(testSystemRestart testSys
 ADD_EXECUTABLE(testTimeout testTimeout.cpp)
 ADD_EXECUTABLE(testTransactions testTransactions.cpp)
 ADD_EXECUTABLE(testDeadlock testDeadlock.cpp)
-ADD_EXECUTABLE(test_event test_event.cpp)
+#ADD_EXECUTABLE(test_event test_event.cpp)
 ADD_EXECUTABLE(ndbapi_slow_select slow_select.cpp)
 ADD_EXECUTABLE(testReadPerf testReadPerf.cpp)
 ADD_EXECUTABLE(testLcp testLcp.cpp)
@@ -57,9 +57,9 @@ ADD_EXECUTABLE(testPartitioning testPart
 ADD_EXECUTABLE(testBitfield testBitfield.cpp)
 ADD_EXECUTABLE(DbCreate bench/mainPopulate.cpp bench/dbPopulate.cpp
bench/userInterface.cpp bench/dbPopulate.h bench/userInterface.h bench/testData.h
bench/testDefinitions.h bench/ndb_schema.hpp bench/ndb_error.hpp)
 ADD_EXECUTABLE(DbAsyncGenerator bench/mainAsyncGenerator.cpp bench/asyncGenerator.cpp
bench/ndb_async2.cpp bench/dbGenerator.h bench/macros.h bench/userInterface.h
bench/testData.h bench/testDefinitions.h bench/ndb_schema.hpp bench/ndb_error.hpp)
-ADD_EXECUTABLE(test_event_multi_table test_event_multi_table.cpp)
+#ADD_EXECUTABLE(test_event_multi_table test_event_multi_table.cpp)
 ADD_EXECUTABLE(testSRBank testSRBank.cpp)
-ADD_EXECUTABLE(test_event_merge test_event_merge.cpp)
+#ADD_EXECUTABLE(test_event_merge test_event_merge.cpp)
 
 ##testDict_INCLUDES = $(INCLUDES) -I$(top_srcdir)/ndb/include/kernel
 ##testIndex_INCLUDES = $(INCLUDES) -I$(top_srcdir)/ndb/include/kernel

--- 1.16/CMakeLists.txt	2007-08-09 01:26:02 -07:00
+++ 1.17/CMakeLists.txt	2007-08-13 09:06:16 -07:00
@@ -16,13 +16,11 @@
 PROJECT(MySql)
 CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
 
+INCLUDE(config.cmake)
+
 # This reads user configuration, generated by configure.js.
 INCLUDE(win/configure.data OPTIONAL)
 
-IF(NOT EXISTS win/configure.data)
-INCLUDE(config.cmake)
-ENDIF(NOT EXISTS win/configure.data)
-
 CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/include/mysql_version.h.in
                ${CMAKE_SOURCE_DIR}/include/mysql_version.h @ONLY)
 
@@ -62,7 +60,6 @@ IF(WITH_NDBCLUSTER_STORAGE_ENGINE)
   ADD_DEFINITIONS(-DHAVE_NDBCLUSTER_DB)
   ADD_DEFINITIONS(-DWITH_NDBCLUSTER_STORAGE_ENGINE)
   SET (mysql_plugin_defs "${mysql_plugin_defs},builtin_ndbcluster_plugin")
-  SET(WITH_PARTITION_STORAGE_ENGINE TRUE)
 ENDIF(WITH_NDBCLUSTER_STORAGE_ENGINE)
 
 IF(WITH_FEDERATED_STORAGE_ENGINE)

--- 1.7/sql/CMakeLists.txt	2007-08-09 01:26:10 -07:00
+++ 1.8/sql/CMakeLists.txt	2007-08-13 09:06:22 -07:00
@@ -28,12 +28,6 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/
                     ${CMAKE_SOURCE_DIR}/bdb/build_win32
                     ${CMAKE_SOURCE_DIR}/bdb/dbinc)
 
-IF(WITH_NDBCLUSTER_STORAGE_ENGINE)
-  INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/ndb/include
-                      ${CMAKE_SOURCE_DIR}/ndb/include
-                      ${CMAKE_SOURCE_DIR}/ndb/include/ndbapi)
-ENDIF(WITH_NDBCLUSTER_STORAGE_ENGINE)
-
 SET_SOURCE_FILES_PROPERTIES(${CMAKE_SOURCE_DIR}/sql/message.rc 
 							${CMAKE_SOURCE_DIR}/sql/message.h 
 							${CMAKE_SOURCE_DIR}/sql/sql_yacc.h 
@@ -47,6 +41,13 @@ SET_SOURCE_FILES_PROPERTIES(${CMAKE_SOUR
 
 ADD_DEFINITIONS(-DHAVE_INNOBASE -DMYSQL_SERVER 
                 -D_CONSOLE -DHAVE_DLOPEN)
+
+IF(WITH_NDBCLUSTER_STORAGE_ENGINE)
+  INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/ndb/include
+                      ${CMAKE_SOURCE_DIR}/ndb/include
+                      ${CMAKE_SOURCE_DIR}/ndb/include/ndbapi)
+ENDIF(WITH_NDBCLUSTER_STORAGE_ENGINE)
+
                 
 IF(DISABLE_GRANT_OPTIONS)                
   ADD_DEFINITIONS(-DDISABLE_GRANT_OPTIONS)

--- 1.2/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp	2006-12-23 11:04:20 -08:00
+++ 1.3/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp	2007-08-13 09:06:21 -07:00
@@ -488,7 +488,7 @@ void showTime()
   now = ::time((time_t*)NULL);
   tm_now = ::gmtime(&now);
 
-  ::snprintf(buf, 128,
+  BaseString::snprintf(buf, 128,
 	     "%d-%.2d-%.2d %.2d:%.2d:%.2d", 
 	     tm_now->tm_year + 1900, 
 	     tm_now->tm_mon, 

--- 1.2/ndb/test/ndbapi/bench/ndb_error.hpp	2006-12-23 11:04:20 -08:00
+++ 1.3/ndb/test/ndbapi/bench/ndb_error.hpp	2007-08-13 09:06:21 -07:00
@@ -36,7 +36,7 @@ CHECK_ALLOWED_ERROR(const char * str, 
 		    const struct NdbError & error){
   
   char buf[100];
-  snprintf(buf, sizeof(buf), "subscriber = %.*s ", 
+  BaseString::snprintf(buf, sizeof(buf), "subscriber = %.*s ", 
 	  SUBSCRIBER_NUMBER_LENGTH, 
 	  td->transactionData.number);
   ndbout << str << " " << error << endl

--- 1.4/ndb/test/ndbapi/bench/userInterface.cpp	2006-12-23 11:04:20 -08:00
+++ 1.5/ndb/test/ndbapi/bench/userInterface.cpp	2007-08-13 09:06:21 -07:00
@@ -657,8 +657,10 @@ int userDbInsertSubscriber(UserHandle   
   int check;
   uint32 activeSessions = 0;
   Location l = 0;
-  ChangedBy changedBy; snprintf(changedBy, sizeof(changedBy), "ChangedBy");
-  ChangedTime changedTime; snprintf(changedTime, sizeof(changedTime), "ChangedTime"); 
+  ChangedBy changedBy;
+  ChangedTime changedTime;
+  BaseString::snprintf(changedBy, sizeof(changedBy), "ChangedBy");
+  BaseString::snprintf(changedTime, sizeof(changedTime), "ChangedTime"); 
 
   NdbConnection * MyTransaction = 0;
   if(uh->pCurrTrans != 0){

--- 1.228/mysql-test/mysql-test-run.pl	2007-06-15 21:19:39 -07:00
+++ 1.229/mysql-test/mysql-test-run.pl	2007-08-13 09:06:17 -07:00
@@ -1465,18 +1465,21 @@ sub executable_setup_ndb () {
   my $ndb_path= mtr_file_exists("$glob_basedir/ndb",
 				"$glob_basedir/storage/ndb",
 				"$glob_basedir/bin");
-
+  my $ndb_rel= $ndb_path;
+  $ndb_rel=~ s/^$glob_basedir\///;
+  
   $exe_ndbd=
-    mtr_exe_maybe_exists("$ndb_path/src/kernel/ndbd",
+    mtr_exe_maybe_exists(vs_config_dirs("$ndb_rel/src/kernel","ndbd"),
 			 "$ndb_path/ndbd");
   $exe_ndb_mgm=
-    mtr_exe_maybe_exists("$ndb_path/src/mgmclient/ndb_mgm",
+    mtr_exe_maybe_exists(vs_config_dirs("$ndb_rel/src/mgmclient","ndb_mgm"),
 			 "$ndb_path/ndb_mgm");
   $exe_ndb_mgmd=
-    mtr_exe_maybe_exists("$ndb_path/src/mgmsrv/ndb_mgmd",
+    mtr_exe_maybe_exists(vs_config_dirs("$ndb_rel/src/mgmsrv","ndb_mgmd"),
 			 "$ndb_path/ndb_mgmd");
   $exe_ndb_waiter=
-    mtr_exe_maybe_exists("$ndb_path/tools/ndb_waiter",
+    mtr_exe_maybe_exists(vs_config_dirs("$ndb_rel/tools","ndb_waiter"),
+			 "$ndb_path/tools/debug/ndb_waiter",
 			 "$ndb_path/ndb_waiter");
 
   # May not exist

--- 1.38/ndb/src/common/mgmcommon/ConfigRetriever.cpp	2007-01-22 04:10:37 -08:00
+++ 1.39/ndb/src/common/mgmcommon/ConfigRetriever.cpp	2007-08-13 09:06:17 -07:00
@@ -271,7 +271,7 @@ ConfigRetriever::verifyConfig(const stru
       !SocketServer::tryBind(0,hostname)) {
     BaseString::snprintf(buf, 255, "Config hostname(%s) don't match a local interface,"
 	     " tried to bind, error = %d - %s",
-	     hostname, errno, strerror(errno));
+	     hostname, socket_errno, strerror(socket_errno));
     setError(CR_ERROR, buf);
     return false;
   }

--- 1.9/ndb/src/common/portlib/NdbCondition.c	2007-08-09 01:26:04 -07:00
+++ 1.10/ndb/src/common/portlib/NdbCondition.c	2007-08-13 09:06:18 -07:00
@@ -50,6 +50,7 @@ NdbCondition_Create(void)
 #ifndef NDB_WIN32
   result = pthread_cond_init(&tmpCond->cond, NULL);
 #else
+  result = 0;
   tmpCond->nWaiters = 0;
   tmpCond->bWasBroadcast = 0;
   if(!(tmpCond->hSemaphore = CreateSemaphore(0, 0, MAXLONG, 0)))

--- 1.15/ndb/src/common/portlib/NdbTCP.cpp	2007-08-09 01:26:05 -07:00
+++ 1.16/ndb/src/common/portlib/NdbTCP.cpp	2007-08-13 09:06:18 -07:00
@@ -21,7 +21,7 @@
 extern "C"
 int 
 Ndb_getInAddr(struct in_addr * dst, const char *address) {
-  //  DBUG_ENTER("Ndb_getInAddr");
+  DBUG_ENTER("Ndb_getInAddr");
   {
     int tmp_errno;
     struct hostent tmp_hostent, *hp;
@@ -32,7 +32,7 @@ Ndb_getInAddr(struct in_addr * dst, cons
     {
       memcpy(dst, hp->h_addr, min(sizeof(*dst), (size_t) hp->h_length));
       my_gethostbyname_r_free();
-      return 0; //DBUG_RETURN(0);
+      DBUG_RETURN(0);
     }
     my_gethostbyname_r_free();
   }
@@ -46,11 +46,11 @@ Ndb_getInAddr(struct in_addr * dst, cons
 #endif
       )
   {
-    return 0; //DBUG_RETURN(0);
+    DBUG_RETURN(0);
   }
-  //  DBUG_PRINT("error",("inet_addr(%s) - %d - %s",
-  //		      address, errno, strerror(errno)));
-  return -1; //DBUG_RETURN(-1);
+  DBUG_PRINT("error",("inet_addr(%s) - %d - %s",
+		      address, socket_errno, strerror(socket_errno)));
+  DBUG_RETURN(-1);
 }
 
 extern "C"

--- 1.27/ndb/src/common/portlib/NdbThread.c	2007-08-09 01:26:05 -07:00
+++ 1.28/ndb/src/common/portlib/NdbThread.c	2007-08-13 09:06:18 -07:00
@@ -151,7 +151,7 @@ struct NdbThread* NdbThread_Create(NDB_T
   initflag = (nPriority ? CREATE_SUSPENDED : 0);
 
   tmpThread->hThread = (HANDLE)_beginthreadex(0, thread_stack_size,
-      ndb_thread_wrapper, p_thread_arg, 
+      ndb_thread_wrapper, tmpThread, 
       initflag, &tmpThread->nThreadId);
 
   if(nPriority && tmpThread->hThread)

--- 1.67/ndb/src/common/transporter/TransporterRegistry.cpp	2007-05-30 08:27:27 -07:00
+++ 1.68/ndb/src/common/transporter/TransporterRegistry.cpp	2007-08-13 09:06:18 -07:00
@@ -895,7 +895,7 @@ TransporterRegistry::poll_TCP(Uint32 tim
   maxSocketValue++; 
   
   tcpReadSelectReply = select(maxSocketValue, &tcpReadset, 0, 0, &timeout);  
-  if(false && tcpReadSelectReply == -1 && errno == EINTR)
+  if(false && tcpReadSelectReply == -1 && socket_errno == SOCKET_EINTR)
     ndbout_c("woke-up by signal");
 
 #ifdef NDB_WIN32

--- 1.20/ndb/src/common/util/SocketServer.cpp	2006-12-23 11:04:14 -08:00
+++ 1.21/ndb/src/common/util/SocketServer.cpp	2007-08-13 09:06:19 -07:00
@@ -50,6 +50,8 @@ SocketServer::~SocketServer() {
 bool
 SocketServer::tryBind(unsigned short port, const char * intface) {
   struct sockaddr_in servaddr;
+  DBUG_ENTER("SocketServer::tryBind");
+  DBUG_PRINT("enter",("interface=%s, port=%u", intface, port));
   memset(&servaddr, 0, sizeof(servaddr));
   servaddr.sin_family = AF_INET;
   servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
@@ -57,12 +59,15 @@ SocketServer::tryBind(unsigned short por
   
   if(intface != 0){
     if(Ndb_getInAddr(&servaddr.sin_addr, intface))
-      return false;
+      DBUG_RETURN(false);
   }
   
   const NDB_SOCKET_TYPE sock  = socket(AF_INET, SOCK_STREAM, 0);
   if (sock == NDB_INVALID_SOCKET) {
-    return false;
+	int err = socket_errno;
+    DBUG_PRINT("error",("socket() - %d - %s",
+			err, strerror(err)));
+    DBUG_RETURN(false);
   }
   
   DBUG_PRINT("info",("NDB_SOCKET: %d", sock));
@@ -70,26 +75,34 @@ SocketServer::tryBind(unsigned short por
   const int on = 1;
   if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, 
 		 (const char*)&on, sizeof(on)) == -1) {
+    int err = socket_errno;
+    DBUG_PRINT("error",("getsockopt() - %d - %s",
+			err, strerror(err)));
     NDB_CLOSE_SOCKET(sock);
-    return false;
+    DBUG_RETURN(false);
   }
   
   if (bind(sock, (struct sockaddr*) &servaddr, sizeof(servaddr)) == -1) {
+    int err = socket_errno;
+    DBUG_PRINT("error",("bind() - %d - %s",
+			err, strerror(err)));
     NDB_CLOSE_SOCKET(sock);
-    return false;
+    DBUG_RETURN(false);
   }
 
   NDB_CLOSE_SOCKET(sock);
-  return true;
+  DBUG_RETURN(true);
 }
 
 bool
 SocketServer::setup(SocketServer::Service * service, 
 		    unsigned short * port,
 		    const char * intface){
+  struct sockaddr_in servaddr;
+  int err;
   DBUG_ENTER("SocketServer::setup");
   DBUG_PRINT("enter",("interface=%s, port=%u", intface, *port));
-  struct sockaddr_in servaddr;
+
   memset(&servaddr, 0, sizeof(servaddr));
   servaddr.sin_family = AF_INET;
   servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
@@ -102,8 +115,9 @@ SocketServer::setup(SocketServer::Servic
   
   const NDB_SOCKET_TYPE sock  = socket(AF_INET, SOCK_STREAM, 0);
   if (sock == NDB_INVALID_SOCKET) {
+    err = socket_errno;
     DBUG_PRINT("error",("socket() - %d - %s",
-			errno, strerror(errno)));
+			err, strerror(err)));
     DBUG_RETURN(false);
   }
   
@@ -112,15 +126,17 @@ SocketServer::setup(SocketServer::Servic
   const int on = 1;
   if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, 
 		 (const char*)&on, sizeof(on)) == -1) {
+    err = socket_errno;
     DBUG_PRINT("error",("getsockopt() - %d - %s",
-			errno, strerror(errno)));
+			err, strerror(err)));
     NDB_CLOSE_SOCKET(sock);
     DBUG_RETURN(false);
   }
   
   if (bind(sock, (struct sockaddr*) &servaddr, sizeof(servaddr)) == -1) {
+    err = socket_errno;
     DBUG_PRINT("error",("bind() - %d - %s",
-			errno, strerror(errno)));
+			err, strerror(err)));
     NDB_CLOSE_SOCKET(sock);
     DBUG_RETURN(false);
   }
@@ -128,16 +144,18 @@ SocketServer::setup(SocketServer::Servic
   /* Get the port we bound to */
   SOCKET_SIZE_TYPE sock_len = sizeof(servaddr);
   if(getsockname(sock,(struct sockaddr*)&servaddr,&sock_len)<0) {
+    err = socket_errno;
     ndbout_c("An error occurred while trying to find out what"
-	     " port we bound to. Error: %s",strerror(errno));
+	     " port we bound to. Error: %s",strerror(err));
     NDB_CLOSE_SOCKET(sock);
     DBUG_RETURN(false);
   }
 
   DBUG_PRINT("info",("bound to %u",ntohs(servaddr.sin_port)));
   if (listen(sock, m_maxSessions > 32 ? 32 : m_maxSessions) == -1){
+    err = socket_errno;
     DBUG_PRINT("error",("listen() - %d - %s",
-			errno, strerror(errno)));
+			err, strerror(err)));
     NDB_CLOSE_SOCKET(sock);
     DBUG_RETURN(false);
   }
@@ -159,13 +177,22 @@ SocketServer::doAccept(){
   FD_ZERO(&exceptionSet);
   
   m_services.lock();
-  int maxSock = 0;
+  int maxSock = -1;
   for (unsigned i = 0; i < m_services.size(); i++){
     const NDB_SOCKET_TYPE s = m_services[i].m_socket;
     FD_SET(s, &readSet);
     FD_SET(s, &exceptionSet);
     maxSock = (maxSock > s ? maxSock : s);
   }
+
+  if (maxSock < 0)
+  {
+	  /* nothing to do here, sleep for 1 second */
+	  sleep(1);
+	  m_services.unlock();
+	  return;
+  }
+
   struct timeval timeout;
   timeout.tv_sec  = 1;
   timeout.tv_usec = 0;

--- 1.14/ndb/src/common/util/socket_io.cpp	2007-01-22 04:10:37 -08:00
+++ 1.15/ndb/src/common/util/socket_io.cpp	2007-08-13 09:06:19 -07:00
@@ -74,7 +74,7 @@ readln_socket(NDB_SOCKET_TYPE socket, in
   do
   {
     int t;
-    while((t = recv(socket, ptr, len, MSG_PEEK)) == -1 && errno == EINTR);
+    while((t = recv(socket, ptr, len, MSG_PEEK)) == -1 && socket_errno == EINTR);
     
     if(t < 1)
     {
@@ -91,7 +91,7 @@ readln_socket(NDB_SOCKET_TYPE socket, in
 	 */
 	for (len = 1 + i; len; )
 	{
-	  while ((t = recv(socket, ptr, len, 0)) == -1 && errno == EINTR);
+	  while ((t = recv(socket, ptr, len, 0)) == -1 && socket_errno == EINTR);
 	  if (t < 1)
 	    return -1;
 	  ptr += t;
@@ -109,7 +109,7 @@ readln_socket(NDB_SOCKET_TYPE socket, in
     
     for (int tmp = t; tmp; )
     {
-      while ((t = recv(socket, ptr, tmp, 0)) == -1 && errno == EINTR);
+      while ((t = recv(socket, ptr, tmp, 0)) == -1 && socket_errno == EINTR);
       if (t < 1)
       {
 	return -1;

--- 1.6/ndb/test/ndbapi/testMgm.cpp	2006-12-23 11:04:19 -08:00
+++ 1.7/ndb/test/ndbapi/testMgm.cpp	2007-08-13 09:06:20 -07:00
@@ -187,6 +187,7 @@ int runTestApiSession(NDBT_Context* ctx,
    *
    * This is kept so that we can at least manually test easily
    */
+  return 0;
 }
 
 

--- 1.43/ndb/test/ndbapi/testOIBasic.cpp	2006-12-23 11:04:19 -08:00
+++ 1.44/ndb/test/ndbapi/testOIBasic.cpp	2007-08-13 09:06:21 -07:00
@@ -142,6 +142,11 @@ static const char* hexstr = "0123456789a
 
 // random ints
 
+#ifdef NDB_WIN32
+#define random() rand()
+#define srandom(SEED) srand(SEED)
+#endif
+
 static unsigned
 urandom(unsigned n)
 {

--- 1.10/ndb/test/tools/transproxy.cpp	2006-12-23 11:04:22 -08:00
+++ 1.11/ndb/test/tools/transproxy.cpp	2007-08-13 09:06:21 -07:00
@@ -217,7 +217,7 @@ Conn::conn0()
     int fd;
     while (1) {
 	if ((fd = socket(PF_INET, SOCK_STREAM, 0)) == -1) {
-	    fatal("%s: create client socket failed: %s", info, strerror(errno));
+	    fatal("%s: create client socket failed: %s", info, strerror(socket_errno));
 	}
 	struct sockaddr_in servaddr;
 	memset(&servaddr, 0, sizeof(servaddr));
@@ -231,8 +231,8 @@ Conn::conn0()
 #endif
 	if (connect(fd, (struct sockaddr*)&servaddr, sizeof(servaddr)) == 0)
 	    break;
-	if (errno != ECONNREFUSED) {
-	    fatal("%s: connect failed: %s", info, strerror(errno));
+	if (socket_errno != SOCKET_ECONNREFUSED) {
+	    fatal("%s: connect failed: %s", info, strerror(socket_errno));
 	}
 	close(fd);
 	NdbSleep_MilliSleep(100);
@@ -246,7 +246,7 @@ Conn::conn1()
 {
     int servfd;
     if ((servfd = socket(PF_INET, SOCK_STREAM, 0)) == -1) {
-	fatal("%s: create server socket failed: %s", info, strerror(errno));
+	fatal("%s: create server socket failed: %s", info, strerror(socket_errno));
     }
     struct sockaddr_in servaddr;
     memset(&servaddr, 0, sizeof(servaddr));
@@ -256,14 +256,14 @@ Conn::conn1()
     const int on = 1;
     setsockopt(servfd, SOL_SOCKET, SO_REUSEADDR, (const char*)&on, sizeof(on));
     if (bind(servfd, (struct sockaddr*) &servaddr, sizeof(servaddr)) == -1) {
-	fatal("%s: bind %d failed: %s", info, proxy, strerror(errno));
+	fatal("%s: bind %d failed: %s", info, proxy, strerror(socket_errno));
     }
     if (listen(servfd, 1) == -1) {
-	fatal("%s: listen %d failed: %s", info, proxy, strerror(errno));
+	fatal("%s: listen %d failed: %s", info, proxy, strerror(socket_errno));
     }
     int fd;
     if ((fd = accept(servfd, 0, 0)) == -1) {
-	fatal("%s: accept failed: %s", info, strerror(errno));
+	fatal("%s: accept failed: %s", info, strerror(socket_errno));
     }
     sockfd[1] = fd;
     close(servfd);

--- 1.142/include/my_global.h	2007-05-24 00:21:57 -07:00
+++ 1.143/include/my_global.h	2007-08-13 09:06:17 -07:00
@@ -945,6 +945,7 @@ typedef off_t os_off_t;
 #define SOCKET_ETIMEDOUT WSAETIMEDOUT
 #define SOCKET_EWOULDBLOCK WSAEWOULDBLOCK
 #define SOCKET_EADDRINUSE WSAEADDRINUSE
+#define SOCKET_ECONNREFUSED WSAECONNREFUSED
 #define SOCKET_ENFILE	ENFILE
 #define SOCKET_EMFILE	EMFILE
 #elif defined(OS2)
@@ -954,6 +955,7 @@ typedef off_t os_off_t;
 #define SOCKET_ETIMEDOUT SOCKET_EINTR
 #define SOCKET_EWOULDBLOCK SOCEWOULDBLOCK
 #define SOCKET_EADDRINUSE SOCEADDRINUSE
+#define SOCKET_ECONNREFUSED SOCECONNREFUSED
 #define SOCKET_ENFILE	SOCENFILE
 #define SOCKET_EMFILE	SOCEMFILE
 #define closesocket(A)	soclose(A)
@@ -965,6 +967,7 @@ typedef off_t os_off_t;
 #define SOCKET_ETIMEDOUT SOCKET_EINTR
 #define SOCKET_EWOULDBLOCK EWOULDBLOCK
 #define SOCKET_EADDRINUSE EADDRINUSE
+#define SOCKET_ECONNREFUSED ECONNREFUSED
 #define SOCKET_ENFILE	ENFILE
 #define SOCKET_EMFILE	EMFILE
 #endif

--- 1.13/ndb/src/common/util/SocketClient.cpp	2007-08-09 01:26:06 -07:00
+++ 1.14/ndb/src/common/util/SocketClient.cpp	2007-08-13 09:06:19 -07:00
@@ -42,6 +42,7 @@ SocketClient::~SocketClient()
 bool
 SocketClient::init()
 {
+  DBUG_ENTER("SocketClient::init");
   if (m_sockfd != NDB_INVALID_SOCKET)
     NDB_CLOSE_SOCKET(m_sockfd);
 
@@ -52,24 +53,27 @@ SocketClient::init()
     m_servaddr.sin_port = htons(m_port);
     // Convert ip address presentation format to numeric format
     if (Ndb_getInAddr(&m_servaddr.sin_addr, m_server_name))
-      return false;
+      DBUG_RETURN(false);
   }
   
   m_sockfd= socket(AF_INET, SOCK_STREAM, 0);
   if (m_sockfd == NDB_INVALID_SOCKET) {
-    return false;
+    DBUG_RETURN(false);
   }
 
   DBUG_PRINT("info",("NDB_SOCKET: %d", m_sockfd));
 
-  return true;
+  DBUG_RETURN(true);
 }
 
 int
 SocketClient::bind(const char* bindaddress, unsigned short localport)
 {
+  DBUG_ENTER("SocketClient::bind");
+  DBUG_PRINT("enter",("address=%s, port=%u", bindaddress, localport));
+
   if (m_sockfd == NDB_INVALID_SOCKET)
-    return -1;
+    DBUG_RETURN(-1);
 
   struct sockaddr_in local;
   memset(&local, 0, sizeof(local));
@@ -78,28 +82,33 @@ SocketClient::bind(const char* bindaddre
   // Convert ip address presentation format to numeric format
   if (Ndb_getInAddr(&local.sin_addr, bindaddress))
   {
-    return errno ? errno : EINVAL;
+    int ret = socket_errno;
+    DBUG_RETURN(ret ? ret : EINVAL);
   }
   
   const int on = 1;
   if (setsockopt(m_sockfd, SOL_SOCKET, SO_REUSEADDR, 
 		 (const char*)&on, sizeof(on)) == -1) {
 
-    int ret = errno;
+    int ret = socket_errno;
+    DBUG_PRINT("error",("setsockopt() - %d - %s",
+			ret, strerror(ret)));
     NDB_CLOSE_SOCKET(m_sockfd);
     m_sockfd= NDB_INVALID_SOCKET;
-    return ret;
+    DBUG_RETURN(ret);
   }
   
   if (::bind(m_sockfd, (struct sockaddr*)&local, sizeof(local)) == -1) 
   {
-    int ret = errno;
+    int ret = socket_errno;
+    DBUG_PRINT("error",("bind() - %d - %s",
+			ret, strerror(ret)));
     NDB_CLOSE_SOCKET(m_sockfd);
     m_sockfd= NDB_INVALID_SOCKET;
-    return ret;
+    DBUG_RETURN(ret);
   }
   
-  return 0;
+  DBUG_RETURN(0);
 }
 
 NDB_SOCKET_TYPE
@@ -107,10 +116,12 @@ SocketClient::connect(const char *toaddr
 {
   fd_set rset, wset;
   struct timeval tval;
-  int r;
+  int r, err;
   bool use_timeout;
   SOCKOPT_OPTLEN_TYPE len;
   int flags;
+  DBUG_ENTER("SocketClient::connect");
+  DBUG_PRINT("enter",("address=%s, port=%u", toaddress, toport));
 
   if (m_sockfd == NDB_INVALID_SOCKET)
   {
@@ -118,7 +129,7 @@ SocketClient::connect(const char *toaddr
 #ifdef VM_TRACE
       ndbout << "SocketClient::connect() failed " << m_server_name << "
" << m_port << endl;
 #endif
-      return NDB_INVALID_SOCKET;
+      DBUG_RETURN(NDB_INVALID_SOCKET);
     }
   }
 
@@ -133,7 +144,7 @@ SocketClient::connect(const char *toaddr
     m_servaddr.sin_port = htons(toport);
     // Convert ip address presentation format to numeric format
     if (Ndb_getInAddr(&m_servaddr.sin_addr, m_server_name))
-      return NDB_INVALID_SOCKET;
+      DBUG_RETURN(NDB_INVALID_SOCKET);
   }
 
 #if defined(_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(_WIN64)
@@ -149,14 +160,18 @@ SocketClient::connect(const char *toaddr
   if (r == 0)
     goto done; // connected immediately.
 
+  err = socket_errno;
 #if defined(_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(_WIN64)
-  if (r < 0 && (errno != WSAEINPROGRESS)) {
+  if (r < 0 && err != SOCKET_EAGAIN && 
+	  err != SOCKET_EWOULDBLOCK) {
 #else
-  if (r < 0 && (errno != EINPROGRESS)) {
+  if (r < 0 && (err != EINPROGRESS)) {
 #endif
+    DBUG_PRINT("error",("connect() - %d - %s",
+			err, strerror(err)));
     NDB_CLOSE_SOCKET(m_sockfd);
     m_sockfd= NDB_INVALID_SOCKET;
-    return NDB_INVALID_SOCKET;
+    DBUG_RETURN(NDB_INVALID_SOCKET);
   }
 
   FD_ZERO(&rset);
@@ -164,14 +179,16 @@ SocketClient::connect(const char *toaddr
   wset= rset;
   tval.tv_sec= m_connect_timeout_sec;
   tval.tv_usec= 0;
-  use_timeout= m_connect_timeout_sec;
+  use_timeout= m_connect_timeout_sec != 0;
 
   if ((r= select(m_sockfd+1, &rset, &wset, NULL,
                  use_timeout? &tval : NULL)) == 0)
   {
+    DBUG_PRINT("info",("no response from server. timeout=%d",
+			m_connect_timeout_sec));
     NDB_CLOSE_SOCKET(m_sockfd);
     m_sockfd= NDB_INVALID_SOCKET;
-    return NDB_INVALID_SOCKET;
+    DBUG_RETURN(NDB_INVALID_SOCKET);
   }
 
   if (FD_ISSET(m_sockfd, &rset) || FD_ISSET(m_sockfd, &wset))
@@ -179,18 +196,24 @@ SocketClient::connect(const char *toaddr
     len= sizeof(r);
     if (getsockopt(m_sockfd, SOL_SOCKET, SO_ERROR, (char *)&r, &len) < 0 || r)
     {
+	  err = socket_errno;
+      DBUG_PRINT("error",("getsockopt() - %d - %s",
+			  err, strerror(err)));
       // Solaris got an error... different than others
       NDB_CLOSE_SOCKET(m_sockfd);
       m_sockfd= NDB_INVALID_SOCKET;
-      return NDB_INVALID_SOCKET;
+      DBUG_RETURN(NDB_INVALID_SOCKET);
     }
   }
   else
   {
+    err = socket_errno;
+    DBUG_PRINT("error",("select() - %d - %s",
+			err, strerror(err)));
     // select error, probably m_sockfd not set.
     NDB_CLOSE_SOCKET(m_sockfd);
     m_sockfd= NDB_INVALID_SOCKET;
-    return NDB_INVALID_SOCKET;
+    DBUG_RETURN(NDB_INVALID_SOCKET);
   }
 
 done:
@@ -204,13 +227,14 @@ done:
   if (m_auth) {
     if (!m_auth->client_authenticate(m_sockfd))
     {
+      DBUG_PRINT("info",("client_authenticate failed"));
       NDB_CLOSE_SOCKET(m_sockfd);
       m_sockfd= NDB_INVALID_SOCKET;
-      return NDB_INVALID_SOCKET;
+      DBUG_RETURN(NDB_INVALID_SOCKET);
     }
   }
   NDB_SOCKET_TYPE sockfd= m_sockfd;
   m_sockfd= NDB_INVALID_SOCKET;
 
-  return sockfd;
+  DBUG_RETURN(sockfd);
 }
Thread
bk commit into 5.0 tree (antony:1.2490)antony13 Aug