You are not logged in.

#1 2018-09-30 16:35:39

loqs
Member
Registered: 2014-03-06
Posts: 6,390

perl-dbd-mariadb PKGBUILD

As referenced in https://lists.archlinux.org/pipermail/a … 45708.html perl-dbd-mariadb might replace perl-dbd-mysql which fails for maria db 10.3
PKGBUILD

pkgname=perl-dbd-mariadb
pkgver=1.00.r0.gafbfe01
pkgrel=1
pkgdesc='Perl/CPAN DBD::mysql module for interacting with MariaDB via DBD'
arch=('x86_64')
license=('GPL' 'PerlArtistic')
url="https://github.com/gooddata/DBD-MariaDB"
depends=('libmariadbclient' 'perl-dbi')
makedepends=('perl-devel-checklib' 'git')
checkdepends=('mariadb' 'perl-test-deep')
options=('!emptydirs')
COMMIT=afbfe016801275c83794f7c02de1cfe15b0ada2f #1.0
source=("git+https://github.com/gooddata/DBD-MariaDB.git#commit=$COMMIT")
sha512sums=('SKIP')

pkgver() {
  cd DBD-MariaDB
  git describe --long --tags | sed 's/-/.r/;s/-/./'
}

build() {
  cd DBD-MariaDB
  perl Makefile.PL INSTALLDIRS=vendor --testsocket=/tmp/socket.mysql --testuser=root
  make
}

check() {
  cd DBD-MariaDB
  mkdir -p /tmp/mysql_test
  mysql_install_db \
     --basedir=/usr \
     --datadir=/tmp/mysql_test
  mysqld -P 17999 \
     --socket=/tmp/socket.mysql \
     --datadir=/tmp/mysql_test &
  sleep 10
  DAEMON_PORT=$!
  make test
  kill -9 $DAEMON_PORT
}

package() {
  cd DBD-MariaDB
  make install DESTDIR="$pkgdir"
}

Changes needed from  perl-dbd-mysql apart from the obvious rename changes has been --testuser=root without this altering stored procedures fails.
Does this change seem correct?  Thoughts on enabling the skipped test?
check.log

Installing MariaDB/MySQL system tables in '/tmp/mysql_test' ...
2018-09-30 17:25:18 140498190000064 [Note] /usr/bin/mysqld (mysqld 10.1.36-MariaDB) starting as process 857 ...
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: innodb_empty_free_list_algorithm has been changed to legacy because of small buffer pool size. In order to use backoff, increase buffer pool at least up to 20MB.

2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: The InnoDB memory heap is disabled
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Compressed tables use zlib 1.2.11
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Using Linux native AIO
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Using SSE crc32 instructions
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Completed initialization of buffer pool
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created!
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
2018-09-30 17:25:18 140498190000064 [Warning] InnoDB: New log files created, LSN=45781
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Doublewrite buffer not found: creating new
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Doublewrite buffer created
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: 128 rollback segment(s) are active.
2018-09-30 17:25:18 140498190000064 [Warning] InnoDB: Creating foreign key constraint system tables.
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Foreign key constraint system tables created
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Creating tablespace and datafile system tables.
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Tablespace and datafile system tables created.
2018-09-30 17:25:18 140498190000064 [Note] InnoDB: Waiting for purge to start
2018-09-30 17:25:18 140498190000064 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.39-83.1 started; log sequence number 0
2018-09-30 17:25:18 140497605621504 [Note] InnoDB: Dumping buffer pool(s) not yet started
2018-09-30 17:25:18 140498189785856 [Warning] Failed to load slave replication state from table mysql.gtid_slave_pos: 1146: Table 'mysql.gtid_slave_pos' doesn't exist
OK
Filling help tables...
2018-09-30 17:25:21 140354085715904 [Note] /usr/bin/mysqld (mysqld 10.1.36-MariaDB) starting as process 887 ...
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: innodb_empty_free_list_algorithm has been changed to legacy because of small buffer pool size. In order to use backoff, increase buffer pool at least up to 20MB.

2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: The InnoDB memory heap is disabled
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Compressed tables use zlib 1.2.11
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Using Linux native AIO
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Using SSE crc32 instructions
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Completed initialization of buffer pool
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Highest supported file format is Barracuda.
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: 128 rollback segment(s) are active.
2018-09-30 17:25:21 140354085715904 [Note] InnoDB: Waiting for purge to start
2018-09-30 17:25:21 140354085715904 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.39-83.1 started; log sequence number 1616697
2018-09-30 17:25:21 140353506113280 [Note] InnoDB: Dumping buffer pool(s) not yet started
OK
Creating OpenGIS required SP-s...
2018-09-30 17:25:24 140570478841792 [Note] /usr/bin/mysqld (mysqld 10.1.36-MariaDB) starting as process 918 ...
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: innodb_empty_free_list_algorithm has been changed to legacy because of small buffer pool size. In order to use backoff, increase buffer pool at least up to 20MB.

2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: The InnoDB memory heap is disabled
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Compressed tables use zlib 1.2.11
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Using Linux native AIO
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Using SSE crc32 instructions
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Completed initialization of buffer pool
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Highest supported file format is Barracuda.
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: 128 rollback segment(s) are active.
2018-09-30 17:25:24 140570478841792 [Note] InnoDB: Waiting for purge to start
2018-09-30 17:25:24 140570478841792 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.39-83.1 started; log sequence number 1616707
2018-09-30 17:25:24 140569894450944 [Note] InnoDB: Dumping buffer pool(s) not yet started
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:

'/usr/bin/mysqladmin' -u root password 'new-password'
'/usr/bin/mysqladmin' -u root -h build-user password 'new-password'

Alternatively you can run:
'/usr/bin/mysql_secure_installation'

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the MariaDB Knowledgebase at http://mariadb.com/kb or the
MySQL manual for more instructions.

You can start the MariaDB daemon with:
cd '/usr' ; /usr/bin/mysqld_safe --datadir='/tmp/mysql_test'

You can test the MariaDB daemon with mysql-test-run.pl
cd '/usr/mysql-test' ; perl mysql-test-run.pl

Please report any problems at http://mariadb.org/jira

The latest information about MariaDB is available at http://mariadb.org/.
You can find additional information about the MySQL part at:
http://dev.mysql.com
Consider joining MariaDB's strong and vibrant community:
https://mariadb.org/get-involved/

2018-09-30 17:25:27 140523263221696 [Note] mysqld (mysqld 10.1.36-MariaDB) starting as process 946 ...
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: innodb_empty_free_list_algorithm has been changed to legacy because of small buffer pool size. In order to use backoff, increase buffer pool at least up to 20MB.

2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Using mutexes to ref count buffer pool pages
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: The InnoDB memory heap is disabled
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Compressed tables use zlib 1.2.11
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Using Linux native AIO
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Using SSE crc32 instructions
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Completed initialization of buffer pool
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Highest supported file format is Barracuda.
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: 128 rollback segment(s) are active.
2018-09-30 17:25:27 140523263221696 [Note] InnoDB: Waiting for purge to start
2018-09-30 17:25:27 140523263221696 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.39-83.1 started; log sequence number 1616717
2018-09-30 17:25:27 140522677073664 [Note] InnoDB: Dumping buffer pool(s) not yet started
2018-09-30 17:25:27 140523263221696 [Note] Plugin 'FEEDBACK' is disabled.
2018-09-30 17:25:27 140523263221696 [Note] Server socket created on IP: '::'.
2018-09-30 17:25:27 140523263221696 [Note] mysqld: ready for connections.
Version: '10.1.36-MariaDB'  socket: '/tmp/socket.mysql'  port: 17999  MariaDB Server
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- MariaDB.bs blib/arch/auto/DBD/MariaDB/MariaDB.bs 644
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
# Driver version is 1.00
t/00base.t .............................. ok
# Connected to 'test' database on 'DBI:MariaDB:test;mariadb_socket=/tmp/socket.mysql' server
# Database 'test' has charset 'utf8mb4'
t/05dbcreate.t .......................... ok
# mariadb_clientinfo is: 10.1.36-MariaDB
# mariadb_clientversion is: 100136
# mariadb_serverversion is: 100136
# mariadb_hostinfo is: Localhost via UNIX socket
# mariadb_serverinfo is: 10.1.36-MariaDB
# mariadb_stat is: Uptime: 10  Threads: 1  Questions: 8  Slow queries: 0  Opens: 17  Flush tables: 1  Open tables: 11  Queries per second avg: 0.800
# mariadb_protoinfo is: 10
# SQL_DBMS_NAME is MariaDB
# SQL_DBMS_VER is 10.01.3600
# SQL_SERVER_NAME is Localhost via UNIX socket
# SQL_DRIVER_VER is 01.00.0000
# Default storage engine is: InnoDB
# @@character_set_client is: utf8mb4
# @@character_set_connection is: utf8mb4
# @@character_set_database is: utf8mb4
# @@character_set_results is: utf8mb4
# @@character_set_server is: utf8mb4
# @@collation_connection is: utf8mb4_general_ci
# @@collation_database is: utf8mb4_unicode_ci
# auto_reconnects_failed is: 0
# auto_reconnects_ok is: 0
t/10connect.t ........................... ok
t/60leaks.t ............................. skipped: Skip $ENV{EXTENDED_TESTING} is not set
t/87async.t ............................. ok
t/rt75353-innodb-lock-timeout.t ......... ok
t/rt85919-fetch-lost-connection.t ....... ok
t/11data_sources.t ...................... ok
2018-09-30 17:26:03 7f58bfd4d640 InnoDB: Error: Table "mysql"."innodb_table_stats" not found.
t/12embedded.t .......................... ok
t/13disconnect.t ........................ ok
t/15reconnect.t ......................... ok
t/16dbi-get_info.t ...................... ok
t/20createdrop.t ........................ ok
t/25lockunlock.t ........................ ok
t/29warnings.t .......................... ok
t/30insertfetch.t ....................... ok
t/31insertid.t .......................... ok
t/32insert_error.t ...................... ok
t/35limit.t ............................. ok
t/35prepare.t ........................... ok
t/40bindparam.t ......................... ok
t/40bindparam2.t ........................ ok
t/40bit.t ............................... ok
t/40blobs.t ............................. ok
t/40catalog.t ........................... ok
t/40invalid_attributes.t ................ ok
t/40keyinfo.t ........................... ok
t/40listfields.t ........................ ok
t/40nulls.t ............................. ok
t/40nulls_prepare.t ..................... ok
t/40numrows.t ........................... ok
t/40server_prepare.t .................... ok
t/40server_prepare_crash.t .............. ok
t/40server_prepare_error.t .............. ok
t/40sth_attr.t .......................... ok
t/40types.t ............................. ok
t/41bindparam.t ......................... ok
t/41blobs_prepare.t ..................... ok
t/41int_min_max.t ....................... ok
t/42bindparam.t ......................... ok
t/43count_params.t ...................... ok
t/44call_placeholder.t .................. ok
t/44limit_placeholder.t ................. ok
t/45bind_no_backslash_escapes.t ......... ok
t/50chopblanks.t ........................ ok
t/50commit.t ............................ ok
t/51bind_type_guessing.t ................ ok
t/52comment.t ........................... ok
t/53comment.t ........................... ok
t/55unicode.t ........................... ok
t/55utf8.t .............................. ok
t/55utf8_jp.t ........................... ok
t/55utf8mb4.t ........................... ok
t/56connattr.t .......................... skipped: performance schema not enabled
t/65segfault.t .......................... ok
t/65types.t ............................. ok
t/70takeimp.t ........................... ok
t/71impdata.t ........................... ok
t/75supported_sql.t ..................... ok
t/76multi_statement.t ................... ok
t/77max_allowed_packet.t ................ ok
t/80procs.t ............................. ok
t/81procs.t ............................. ok
t/85init_command.t ...................... ok
t/86_bug_36972.t ........................ ok
t/88async-multi-stmts.t ................. ok
t/89async-method-check.t ................ ok
t/90utf8_params.t ....................... ok
t/91errcheck.t .......................... ok
t/92ssl_backronym_vulnerability.t ....... ok
t/92ssl_connection.t .................... skipped: Server does not support SSL connections
t/92ssl_optional.t ...................... ok
t/92ssl_riddle_vulnerability.t .......... ok
t/99_bug_server_prepare_blob_null.t ..... ok
t/cve-2017-3302.t ....................... ok
t/magic.t ............................... ok
t/manifest.t ............................ skipped: these tests are for release testing
t/pod.t ................................. skipped: Test::Pod 1.41 required for testing POD
t/rt110983-valid-mysqlfd.t .............. ok
t/rt118977-zerofill.t ................... ok
t/rt122541-decimals.t ................... ok
t/rt25389-bin-case.t .................... ok
t/rt50304-column_info_parentheses.t ..... ok
t/rt61849-bind-param-buffer-overflow.t .. ok
t/rt83494-quotes-comments.t ............. ok
t/rt86153-reconnect-fail-memory.t ....... skipped: $ENV{EXTENDED_TESTING} is not set
t/rt88006-bit-prepare.t ................. ok
t/rt91715.t ............................. ok
All tests successful.
Files=88, Tests=3171, 35 wallclock secs ( 0.31 usr  0.07 sys +  5.75 cusr  0.74 csys =  6.87 CPU)
Result: PASS

This build also passes for MariaDB 10.3
Edit:
perl-dbd-mysql test 15 needs https://github.com/pali/DBD-MariaDB/com … 7108.patch
Edit2:
perl-dbd-mysql zerofill seems to need https://github.com/pali/DBD-MariaDB/com … db93.patch and possibly https://github.com/pali/DBD-MariaDB/com … 16df.patch

Last edited by loqs (2018-10-01 17:11:24)

Offline

Board footer

Powered by FluxBB