Commit be4f7bbd authored by sasha@mysql.sashanet.com's avatar sasha@mysql.sashanet.com
Browse files

Merge work:/home/bk/mysql

into mysql.sashanet.com:/home/sasha/src/bk/mysql
parents 70455174 681cdbbd
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -291,3 +291,10 @@ myisam/test1.MYD
myisam/test1.MYI
.gdbinit
.vimrc
client/log_event.cc
client/log_event.h
client/mf_iocache.c
client/mf_iocache.cc
client/mysqlbinlog
client/mysys_priv.h
mysql.kdevprj
+1 −0
Original line number Diff line number Diff line
@@ -2,3 +2,4 @@ heikki@donna.mysql.fi
jani@hynda.mysql.fi
jcole@tetra.spaceapes.com
tim@work.mysql.com
sasha@mysql.sashanet.com
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ linked_include_sources:
	echo timestamp > linked_include_sources

linked_client_sources:  @linked_client_targets@
	cd client; $(MAKE) link_sources
	echo timestamp > linked_client_sources

linked_libmysql_sources:
+16 −1
Original line number Diff line number Diff line
@@ -21,7 +21,8 @@ INCLUDES = -I$(srcdir)/../include \
				-I..
LIBS =				@CLIENT_LIBS@
LDADD =				@CLIENT_EXTRA_LDFLAGS@ ../libmysql/libmysqlclient.la
bin_PROGRAMS =			mysql mysqladmin mysqlcheck mysqlshow mysqldump mysqlimport mysqltest
bin_PROGRAMS =			mysql mysqladmin mysqlcheck mysqlshow \
 mysqldump mysqlimport mysqltest mysqlbinlog
noinst_PROGRAMS =		insert_test select_test thread_test
noinst_HEADERS =		sql_string.h completion_hash.h my_readline.h
mysql_SOURCES =			mysql.cc readline.cc sql_string.cc completion_hash.cc
@@ -36,10 +37,24 @@ insert_test_DEPENDENCIES= $(LIBRARIES) $(pkglib_LTLIBRARIES)
select_test_DEPENDENCIES=	$(LIBRARIES) $(pkglib_LTLIBRARIES)
mysqltest_SOURCES=			mysqltest.c
mysqltest_DEPENDENCIES=   	$(LIBRARIES) $(pkglib_LTLIBRARIES)
mysqlbinlog_SOURCES =   mysqlbinlog.cc 
mysqlbinlog_DEPENDENCIES=   	$(LIBRARIES) $(pkglib_LTLIBRARIES)
sql_src=log_event.h log_event.cc
mysys_src=mysys_priv.h

# Fix for mit-threads
DEFS =			-DUNDEF_THREADS_HACK

link_sources:
	for f in $(sql_src) ; do \
	rm -f $$f; \
        @LN_CP_F@ ../sql/$$f $$f; \
        done; \
	for f in $(mysys_src); do \
	rm -f $$f; \
	@LN_CP_F@ ../mysys/$$f $$f; \
	done;

thread_test.o:		thread_test.c
			$(COMPILE) -c @MT_INCLUDES@ $(INCLUDES) $<

+19 −16
Original line number Diff line number Diff line
@@ -22,13 +22,19 @@
#include <my_sys.h>
#include <getopt.h>
#include <thr_alarm.h>
#define MYSQL_SERVER			// We want the C++ version of net
#include <mysql.h>
#include "log_event.h"
#include "mini_client.h"

#define CLIENT_CAPABILITIES	(CLIENT_LONG_PASSWORD | CLIENT_LONG_FLAG | CLIENT_LOCAL_FILES)

extern "C"
{
 int simple_command(MYSQL *mysql,enum enum_server_command command,
			      const char *arg,
		  uint length, my_bool skipp_check);
 int net_safe_read(MYSQL* mysql);
}

char server_version[SERVER_VERSION_LENGTH];
uint32 server_id = 0;

@@ -108,7 +114,7 @@ static void die(const char* fmt, ...)

static void print_version()
{
  printf("%s  Ver 1.4 for %s at %s\n",my_progname,SYSTEM_TYPE, MACHINE_TYPE);
  printf("%s  Ver 1.5 for %s at %s\n",my_progname,SYSTEM_TYPE, MACHINE_TYPE);
}


@@ -248,12 +254,12 @@ static int parse_args(int *argc, char*** argv)

static MYSQL* safe_connect()
{
  MYSQL *local_mysql = mc_mysql_init(NULL);
  MYSQL *local_mysql = mysql_init(NULL);
  if(!local_mysql)
    die("Failed on mc_mysql_init");
    die("Failed on mysql_init");

  if(!mc_mysql_connect(local_mysql, host, user, pass, 0, port, 0, 0))
    die("failed on connect: %s", mc_mysql_error(local_mysql));
  if(!mysql_real_connect(local_mysql, host, user, pass, 0, port, 0, 0))
    die("failed on connect: %s", mysql_error(local_mysql));

  return local_mysql;
}
@@ -281,7 +287,7 @@ static void dump_remote_table(NET* net, const char* db, const char* table)
  *p++ = table_len;
  memcpy(p, table, table_len);
  
  if(mc_simple_command(mysql, COM_TABLE_DUMP, buf, p - buf + table_len, 1))
  if(simple_command(mysql, COM_TABLE_DUMP, buf, p - buf + table_len, 1))
    die("Error sending the table dump command");

  for(;;)
@@ -314,14 +320,14 @@ static void dump_remote_log_entries(const char* logname)
  len = (uint) strlen(logname);
  int4store(buf + 6, 0);
  memcpy(buf + 10, logname,len);
  if(mc_simple_command(mysql, COM_BINLOG_DUMP, buf, len + 10, 1))
  if(simple_command(mysql, COM_BINLOG_DUMP, buf, len + 10, 1))
    die("Error sending the log dump command");
  
  for(;;)
  {
    len = mc_net_safe_read(mysql);
    len = net_safe_read(mysql);
    if (len == packet_error)
      die("Error reading packet from server: %s", mc_mysql_error(mysql));
      die("Error reading packet from server: %s", mysql_error(mysql));
    if(len == 1 && net->read_pos[0] == 254)
      break; // end of data
    DBUG_PRINT("info",( "len= %u, net->read_pos[5] = %d\n",
@@ -391,7 +397,7 @@ static void dump_local_log_entries(const char* logname)
    char llbuff[21];
    my_off_t old_off = my_b_tell(file);

    Log_event* ev = Log_event::read_log_event(file, 0);
    Log_event* ev = Log_event::read_log_event(file);
    if (!ev)
    {
      if (file->error)
@@ -430,9 +436,6 @@ int main(int argc, char** argv)

  if(use_remote)
  {
#ifndef __WIN__
    init_thr_alarm(10); // need to do this manually 
#endif
    mysql = safe_connect();
  }

@@ -457,7 +460,7 @@ int main(int argc, char** argv)
  if (result_file != stdout)
    my_fclose(result_file, MYF(0));
  if (use_remote)
    mc_mysql_close(mysql);
    mysql_close(mysql);
  return 0;
}

Loading