[MDEV-9269] main.mysqltest test fails on arch alpha Created: 2015-12-11  Updated: 2022-11-15  Resolved: 2022-11-10

Status: Closed
Project: MariaDB Server
Component/s: Platform Debian, Tests
Affects Version/s: 10.0.22
Fix Version/s: N/A

Type: Bug Priority: Minor
Reporter: Otto Kekäläinen Assignee: Vicențiu Ciorbaru
Resolution: Won't Fix Votes: 0
Labels: None


 Description   

In Debian, the builds for the unofficial alpha platform fails due to failing test:

main.mysqltest                           w2 [ fail ]
        Test ended at 2015-12-11 05:18:35
 
CURRENT_TEST: main.mysqltest
sh: 1: illegal_command: not found
�/«PKGBUILDDIR»/builddir/client/mysqltest: Error on delete of 'DoesNotExist' (Errcode: 2 "No such file or directory")
mysqltest: At line 1800: exec of 'echo "source /«PKGBUILDDIR»/builddir/mysql-test/var/2/tmp/mysqltest.sql;" | /«PKGBUILDDIR»/builddir/client/mysqltest --defaults-file=/«PKGBUILDDIR»/builddir/mysql-test/var/2/my.cnf --silent --tmpdir=/«PKGBUILDDIR»/builddir/mysql-test/var/tmp/2 --character-sets-dir=/«PKGBUILDDIR»/sql/share/charsets --logdir=/«PKGBUILDDIR»/builddir/mysql-test/var/2/log --database=test --timer-file=/«PKGBUILDDIR»/builddir/mysql-test/var/2/log/timer 2>&1' failed, error: 256, status: 1, errno: 2
Output from before failure:
mysqltest: In included file "/«PKGBUILDDIR»/builddir/mysql-test/var/2/tmp/mysqltest.sql": 
included from <stdin> at line 1:
At line 7: query 'connect  test_con1,localhost,root,,' failed: 2013: Lost connection to MySQL server at 'waiting for initial communication packet', system error: 60 "Connection timed out"
 
 
 
The result from queries just before the failure was:
< snip >
col1	col2
b	d
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column a'
mysqltest: At line 1: Wrong number of arguments to replace_column in 'replace_column 1'
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column a b'
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column a 1'
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column 1 b c '
select "LONG_STRING" as x;
x
LONG_STRING
dog
mysqltest: At line 1: Invalid integer argument "10!"
mysqltest: At line 1: Invalid integer argument "a"
mysqltest: At line 1: Missing required argument 'connection name' to command 'connect'
mysqltest: At line 1: Missing required argument 'connection name' to command 'connect'
mysqltest: At line 1: Missing required argument 'host' to command 'connect'
mysqltest: At line 1: Missing required argument 'host' to command 'connect'
mysqltest: At line 1: query 'connect  con2,localhost,root,,illegal_db' failed: 1049: Unknown database 'illegal_db'
mysqltest: At line 1: Illegal argument for port: 'illegal_port'
mysqltest: At line 1: Illegal option to connect: SMTP
 
More results from queries before failure can be found in /«PKGBUILDDIR»/builddir/mysql-test/var/2/log/mysqltest.log
 
 - saving '/«PKGBUILDDIR»/builddir/mysql-test/var/2/log/main.mysqltest/' to '/«PKGBUILDDIR»/builddir/mysql-test/var/log/main.mysqltest/'
 
Retrying test main.mysqltest, attempt(2/3)...
 
***Warnings generated in error logs during shutdown after running tests: main.mysql_upgrade_view main.mysqltest main.mysqldump_restore main.mysql_binary_mode main.ctype_gbk_binlog
 
151211  5:16:34 [ERROR] mysqld got signal 11 ;
Attempting backtrace. You can use the following information to find out

Full log at https://buildd.debian.org/status/fetch.php?pkg=mariadb-10.0&arch=alpha&ver=10.0.22-2&stamp=1449822712

This issue is very minor, I don't expect anybody to fix it unless the fix is very easy or if somebody anywhere ever actually is found to be using Alpha machines.



 Comments   
Comment by Elena Stepanova [ 2016-01-12 ]

It appears that the server actually crashes here, so it would be better to check it.
What are our options? Can we access the machine to run anything there manually? Or what else can we do with the box?

Comment by Elena Stepanova [ 2016-08-21 ]

Re-opening - if we have to mark the test unstable, we can't just close the report.

Comment by Elena Stepanova [ 2017-06-29 ]

cvicentiu, could you please check if it's still valid, and close if it's not? Thanks

Comment by Daniel Black [ 2022-11-10 ]

Test failure avoided by not compiling.

Not a supported architecture.

Comment by Otto Kekäläinen [ 2022-11-13 ]

MariaDB 10.5 a year ago still built on Alpha:
https://buildd.debian.org/status/logs.php?pkg=mariadb-10.5
https://buildd.debian.org/status/fetch.php?pkg=mariadb-10.5&arch=alpha&ver=1%3A10.5.12-1&stamp=1628596323&raw=0

While Alpha is an esoteric architecture, mistakes that break cross-arch builds are typically due to misuse of C++ syntax/concepts and fixing them usually benefits all architectures.

So you have decided that from MariaDB 10.6 onwards it is OK to break Alpha builds (and all other architectures that share the same fundamental thing that was now broken, whatever it is).

Note that in MariaDB 10.6.9 also the builds on ia64, m68k, riscv64 and sparc64 started to fail. They used to work, and whatever broke them is probably a bug in MariaDB C/C++ code syntax/constructs. I think an open source database that tries to be universal and have large adoption should care about cross-architecture compatible code at least to the degree that existing platforms should continue to work, as that is most likely not that much work to do.

Details: https://alioth-lists.debian.net/pipermail/pkg-mysql-maint/2022-September/015984.html

FYI TheLinuxJedi

Comment by Daniel Black [ 2022-11-13 ]

Supported by us is the architectures and configurations in buildbot.

Debian supported architectures are supported by Debian. Maintenance means putting an effort into fixing these supposedly simple things and submitting them upstream.

While care is taken on good constructs, without a CI to enforce it there's no responsibility.

Like other platforms like BSDs that we don't have in CI, its maintainers and interested parties do a great job in submitting patches to fix platform issues.

Alpha was a linker error, so wasn't unlikely C/C++ constructs. If there's someone that understands the required linking conventions of Alpha and they can offer a proposals on how to handle this and they are welcome at https://github.com/MariaDB/server/pulls.

While cross platform has always been a goal, without users to express interest or people wiling to point out error, there will be bugs that creep in. A 7 year old bug like this where no user raised interest in the lack of support, here or on the debian-mysql isn't important enough. Guessing solutions on platforms we don't have access to isn't a time effective solution.

There are enough user submitted bugs/feature requests on things that matter to them to occupy the development effort.

Comment by Otto Kekäläinen [ 2022-11-13 ]

Alpha was a linker error, so wasn't unlikely C/C++ constructs.

Thanks for checking.

Note that while this bug has been open for 7 years, the the previous passed Alpha build from 1 year ago (https://buildd.debian.org/status/fetch.php?pkg=mariadb-10.5&arch=alpha&ver=1%3A10.5.12-1&stamp=1628596323&raw=0) did not suffer from this as the test was on skiplist due to MDEV-13887 (which was originally detected in Buildbot).

Just leaving this info here in case somebody else wants to contribute and fix this test for all platforms.

Comment by Andrew Hutchings [ 2022-11-15 ]

Incidentally, riscv64 is failing because you were using a version of GCC which has known bug in RISC-V atomics. It was fixed in GCC in May IIRC.

As for m68k, I'm probably one of the only people in the world with an m68k machine capable of running MariaDB on it even if we could compile it. And that is only because I designed the firmware and hardware to be way outside of the original m68k spec.

Generated at Thu Feb 08 07:33:24 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.