Bug #9388 Server crashes in some QNX builds using '--ps-protocol' on test 'sum_distinct'
Submitted: 24 Mar 2005 18:03 Modified: 20 Sep 2005 16:09
Reporter: Joerg Bruehe Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:5.0.3 OS:Other (QNX)
Assigned to: CPU Architecture:Any

[24 Mar 2005 18:03] Joerg Bruehe
Description:
Final release build of 5.0.3, based on ChangeSet
  1.1847.1.1 05/03/22 21:52:01 jimw@mysql.com +11 -0
  Hack to ensure that CHAR's created in 5.0 are not converted to VARCHAR even if
  the row type is dynamic (For 4.1 tables old 'VARCHAR' fields are converted to
  true VARCHAR in the next ALTER TABLE)

  This ensures that one can use MySQL 5.0 privilege tables with MySQL 4.1.

  (Fix imported from main 5.0 tree to 5.0.3 build tree.)

Crash observed only on QNX, only in "pro" and "standard", only in '--ps-protocol' test run. Symptom:

sum_distinct                   [ fail ]

Errors are (from /home/mysqldev/buildqnx/test/mysql-pro-5.0.3-beta-pc-nto-qnx6.2.1-i386/mysql-test/var/log/mysqltest-time) :
/home/mysqldev/buildqnx/test/mysql-pro-5.0.3-beta-pc-nto-qnx6.2.1-i386/bin/mysqltest: At line 130: unable to execute statement 'INSERT INTO t2 SELECT id FROM t1 ORDER BY id*rand()': Lost connection to MySQL server during query (mysql_stmt_errno=2013 returned=1)
(the last lines may be the most important ones)

No tree saved yet, as build is progressing.

How to repeat:
Build + test on QNX.
[14 Apr 2005 15:13] Joerg Bruehe
In the release build of 5.0.4, the effect reverted: 
- It crashed _only_ in the --ps-protocol run, passed in default.
- It happened _only_ in "max", passed in "standard" and "cluster".
[10 Jun 2005 13:41] Konstantin Osipov
Joerg, please verify if it's present in the latest 5.0 build.
[20 Sep 2005 16:09] Valeriy Kravchuk
I tried to run this test, both with --ps-protocol option and without it, on relatively new (of August 16th) nightly build of 5.0.14-rc, and both test passed:

<y/5.0/mysql-test> ./mysql-test-run --ps-protocol sum_distinct
Installing Test Databases
Removing Stale Files
Installing Master Databases
running  ../libexec/mysqld --no-defaults --bootstrap --skip-grant-tables     --b
asedir=.. --datadir=mysql-test/var/master-data --skip-innodb --skip-ndbcluster -
-skip-bdb
Installing Slave Databases
running  ../libexec/mysqld --no-defaults --bootstrap --skip-grant-tables     --b
asedir=.. --datadir=mysql-test/var/slave-data --skip-innodb --skip-ndbcluster --
skip-bdb
Manager disabled, skipping manager start.
Loading Standard Test Databases
Starting Tests

TEST                            RESULT
-------------------------------------------------------
sum_distinct                   [ pass ]
-------------------------------------------------------

Ending Tests
Shutting-down MySQL daemon

Master shutdown finished
Slave shutdown finished
All 1 tests were successful.

mysqldev@buildqnx2:~/valeriy/5.0/mysql-test> ./mysql-test-run sum_distinct
Installing Test Databases
Removing Stale Files
Installing Master Databases
running  ../libexec/mysqld --no-defaults --bootstrap --skip-grant-tables     --b
asedir=.. --datadir=mysql-test/var/master-data --skip-innodb --skip-ndbcluster -
-skip-bdb
Installing Slave Databases
running  ../libexec/mysqld --no-defaults --bootstrap --skip-grant-tables     --b
asedir=.. --datadir=mysql-test/var/slave-data --skip-innodb --skip-ndbcluster --
skip-bdb
Manager disabled, skipping manager start.
Loading Standard Test Databases
Starting Tests

TEST                            RESULT
-------------------------------------------------------
sum_distinct                   [ pass ]
-------------------------------------------------------

Ending Tests
Shutting-down MySQL daemon

Master shutdown finished
Slave shutdown finished
All 1 tests were successful.

mysqldev@buildqnx2:~/valeriy/5.0/mysql-test> uname -a
QNX buildqnx2 6.2.1 2003/01/18-02:12:22est x86pc x86

I had build it on QNX with the following configure options:

CC="ccache qcc" CXX="ccache qcc" CFLAGS="-O1 -Wl,-E" CXXFLAGS="-O1 -Wl,-E"  ./configure --prefix=/home/mysqldev/valeriy/5.0 \
--with-comment="MySQL Community Edition - Experimental (GPL)" --with-extra-charsets=complex --with-server-suffix="-max" --enable-thread-safe-client --enable-local-infile \
--disable-shared --with-big-tables --with-readline --with-archive-storage-engine \
--with-blackhole-storage-engine --with-csv-storage-engine --with-example-storage-engine \
--with-federated-storage-engine --with-innodb

So, I can't repeat the described behaviour now.