Bug Report: Replication in 4.0.5beta

2002-11-28 Thread Michael Ryan
The environment info was copied from the mysqlbug command by our external
hosting company who truncated the lines therefore the last couple of
characters from each line is not there however it was a Solaris 2.8 binary
download of 4.0.5beta so you would have all of the info anyway.

Description:
I am using MySQL 4.0.5beta on Solaris 2.8 from a binary version
downloaded from www.mysql.com on the 19th of November 2002. I have one
database set up as the master database and 2 databases set up as slave
databases. Each database is on a separate SUN server. I am performing
intense load testing on MySQL replicated databases using InnoDB tables and
transactions and I have come across what is most likely a bug. 

The replication is failing on the slaves with the following error (this
appears both slaves error logs at the same time) :-

021127 13:48:28  Error in Log_event::read_log_event(): 'Event too big',
data_len=1397639424,event_type=111
021127 13:55:36  Error in Log_event::read_log_event(): 'Event too big',
data_len=1397639424,event_type=111

As you can see the data_len is 1.3G. The master log position at this time
was less than 300Meg so a single event, even if I did about 500,000 inserts
in a transaction block, could not be larger than 300Meg. I have
MAX_BINLOG_SIZE set to 2Meg on the master database and the slaves. As it is
I know that the transactions were small as the records were being inserted
on the slave machines which only happens after the commit takes place on the
master.

I have run this test several times and it falls over after a different
number of records have been replicated each time (I performed reset master
and reset slave on the databases between tests to ensure a clean run) but
the reported error is the same i.e. data_len being 1.3G.

I feel the master log file switching has somehow corrupted the binary log
file. I had previously loaded 1,000,000 records on this replicated server
and it worked fine. However the binary log files were never switched because
the server was under too much load. I then changed my method of allocating
sequential keys which slowed things down enough for the log switching to
occur at the size specified in MAX_BINLOG_SIZE and I got the error.

How-To-Repeat:

Re-run the test after performing a reset master and reset slave on
the appropriate databases.

Fix:
If I take out the setting of MAX_BINLOG_SIZE to let it use the
default size of 1Gig and re-run my test it works OK.


Submitter-Id:  [EMAIL PROTECTED]
Originator:MySQL owner
Organization: BBC
MySQL support: none (until we go live)
Synopsis:  Bug in binary log and/or replication
Severity:  serious
Priority:  
Category:  mysql
Class: [ sw-bug | doc-bug | change-request | support ] (one line)
Release:   mysql-4.0.5-beta-standard (Official MySQL-standard binary)

Environment:
machine, os, target, libraries (multiple lines)
System: SunOS db1.mh.bbc.co.uk 5.8 Generic_108528-15 sun4u sparc
SUNW,Sun-Fire-480R
Architecture: sun4

Some paths:  /usr/bin/perl /usr/local/bin/make

Compilation info: CC='gcc'  CFLAGS='-O3 -fno-omit-frame-pointer'  CXX='gcc'
CXXFLAGS='-O3 -fno-om
structors -fno-exceptions -fno-rtti'  LDFLAGS=''  ASFLAGS=''
LIBC:
lrwxrwxrwx   1 root root  11 Nov 15 15:21 /lib/libc.so -
./libc.so.1
-rwxr-xr-x   1 root bin  1146204 Jun  3 08:46 /lib/libc.so.1
lrwxrwxrwx   1 root root  11 Nov 15 15:21 /usr/lib/libc.so -
./libc.so.1
-rwxr-xr-x   1 root bin  1146204 Jun  3 08:46 /usr/lib/libc.so.1
Configure command: ./configure --prefix=/usr/local/mysql
'--with-comment=Official MySQL-standard b
=complex --with-server-suffix=-standard --enable-thread-safe-client
--enable-local-infile --enable
bs=no --disable-shared --with-innodb CC=gcc 'CFLAGS=-O3
-fno-omit-frame-pointer' 'CXXFLAGS=-O3 -fn
-constructors -fno-exceptions -fno-rtti' CXX=gcc
Perl: This is perl, version 5.005_03 built for sun4-solaris



BBCi at http://www.bbc.co.uk/

This e-mail (and any attachments) is confidential and may contain 
personal views which are not the views of the BBC unless specifically 
stated.
If you have received it in error, please delete it from your system, do 
not use, copy or disclose the information in any way nor act in 
reliance on it and notify the sender immediately. Please note that the 
BBC monitors e-mails sent or received. Further communication will 
signify your consent to this.


-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




RE: LOAD DATA LOCAL INFILE

2002-11-28 Thread Michael Ryan
The MySQL Manual states the following in the LOAD DATA INFILE section :-

If a filename with no leading components is given, the server looks for the file in 
the database directory of the current database.

-Original Message-
From: John Connolly [mailto:[EMAIL PROTECTED]]
Sent: 28 November 2002 14:12
To: [EMAIL PROTECTED]
Subject: LOAD DATA LOCAL INFILE


Hello all ---

I posted this yesterday, perhaps before my subscription took effect, 
and so I am not sure that it got distributed. So, forgive the 
repetition in sending, if that's the case. Anyway . . .

Here's the question, as succinctly as I can formulate it:


The documentation seems to say that one can load a tab-delimited text 
file located in the current directory of the client host into a 
database by running the client mysql and executing the following 
command:

mysql LOAD DATA LOCAL INFILE absence.txt into table absence;

When absence.txt is located in 
/Users/jack/Desktop/SQL_stuff/samp_db/, then the command:

mysql LOAD DATA LOCAL INFILE /Users/jack/Desktop/SQL_stuff/samp_db/ 
absence.txt into table absence;

does work.

But the command:

mysql LOAD DATA LOCAL INFILE absence.txt into table absence;

does not work. Rather, it produces the error:

ERROR:
File 'absence.txt' not found (Errcode: 2)

That is, absolute pathnames work, but relative pathnames do not.

I have been careful to be sure that, when invoking the mysql client, I 
am in the correct directory, and that when I invoke mysql, that I 
include the --local-infile option, as the following printout shows:

[Jacks-G4:~/Desktop/SQL_stuff/samp_db] jack% mysql --local-infile 
samp_db

Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 14 to server version: 3.23.52-entropy.ch

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql LOAD DATA LOCAL INFILE absence.txt into table absence;
ERROR:
File 'absence.txt' not found (Errcode: 2)

I have concluded that one cannot use the relative pathname of a file 
in the LOAD DATA LOCAL INFILE command. I hope I am wrong, as it would 
be nice to use the simpler, relative, pathname.

With thanks for your replies, am I wrong or right? If wrong, what am I 
missing?


Jack Connolly
Hanover, MA
[EMAIL PROTECTED]

Running, on Mac OS 10.2, server and client on same machine:
++
| version()  |
++
| 3.23.52-entropy.ch |
++



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php


BBCi at http://www.bbc.co.uk/

This e-mail (and any attachments) is confidential and may contain 
personal views which are not the views of the BBC unless specifically 
stated.
If you have received it in error, please delete it from your system, do 
not use, copy or disclose the information in any way nor act in 
reliance on it and notify the sender immediately. Please note that the 
BBC monitors e-mails sent or received. Further communication will 
signify your consent to this.


-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




Error using replication in 4.0.5beta

2002-11-27 Thread Michael Ryan
I have a master/slave setup using MySQL 4.0.5beta on Solaris 2.8. I received the 
following error on the slave :-

/usr/local/mysql_4.0.5beta/bin/mysqld: ready for connections
021126 18:48:19  Error in Log_event::read_log_event(): 'Event too big', 
data_len=1297040128,event_type=111

Does anybody know what this means ?

Thanks,
Michael Ryan


BBCi at http://www.bbc.co.uk/

This e-mail (and any attachments) is confidential and may contain 
personal views which are not the views of the BBC unless specifically 
stated.
If you have received it in error, please delete it from your system, do 
not use, copy or disclose the information in any way nor act in 
reliance on it and notify the sender immediately. Please note that the 
BBC monitors e-mails sent or received. Further communication will 
signify your consent to this.


-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




MAX_BINLOG_SIZE

2002-11-04 Thread Michael Ryan
I am using MySQL V4.0.2alpha and I have set MAX_BINLOG_SIZE to 2M in order to
not have to run a CRON job or something similar to do a FLUSH LOGS
intermittently. This should cause the binary log file to be rotated after it
has reached 2M according to the documentation. This hasn't been happening as I
have binary log files that have reached 240M. It is rotating them but
definitely not always at 2M. From what I can work out it seems to rotate the
log after it has been idle for a little while and it has an SQL statement that
should be written to the binary log. I have been performing load tests on a
replicated MySQL database by inserting about 500,000 records into an InnoDB
table and the binary log files do not get rotated until after my last insert
statement has completed and the database has been idle for a period of time (I
have not tested how long it takes) and then I go to do another insert. Is this
a 4.0.2alpha feature and is fixed in later versions or is the way it was meant
to work in which case the documentation might need a little re-wording.

Regards,
Michael Ryan

__
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php