[MDEV-25992] Galera 3 Server crash with signal 6 after RBR event apply failed Created: 2021-06-22  Updated: 2021-10-30  Resolved: 2021-10-30

Status: Closed
Project: MariaDB Server
Component/s: Data Manipulation - Delete, Galera, Platform Debian, Storage Engine - InnoDB
Affects Version/s: 10.3.29
Fix Version/s: 10.3.32

Type: Bug Priority: Major
Reporter: Glyn Astill Assignee: Jan Lindström (Inactive)
Resolution: Fixed Votes: 3
Labels: crash, galera, innodb
Environment:

3 Node MariaDB / Galera cluster with ProxySQL v2.0.15-20-g32bb92cd proxy in front.

10.3.29-MariaDB-1:10.3.29+maria~bionic-log
wsrep_patch: wsrep_25.24
wsrep_provider: 25.3.33(r15123524)

OS: Ubuntu 20.04 LTS
Kernel: 4.15.0-144-generic


Attachments: File gdb.114.125551.1624967167.gz     Text File mariadb1_uat.txt    
Issue Links:
Problem/Incident
is caused by MDEV-25114 Crash: WSREP: invalid state ROLLED_BA... Closed

 Description   

We have a 3 node cluster in our UAT environment, with all traffic going to node 3, an incoming delete conflict causes nodes 1 & 2 to crash. This causes node 3 to go non-primary (as expected).

The crash is always on the non-write nodes (either one of them or both crash) that are applying the deletes concurrently.

the delete is always on the same table named "blobs" with a self-referencing foreign key:

Of note, the logged SQL for the conflict appears to have some garbled data on the end of it (that I can't quite capture in this form):

"SQL: DELETE FROM blobs WHERE id = '7432858'???`^S^F"

The table has been rebuilt with an alter table engine = innodb, yet the issue still occours.

The crashes started 5 days after we upgraded from:

10.3.24-MariaDB-1:10.3.24+maria~bionic-log
patch: wsrep_25.24
prov: 25.3.29(r3902)

... and on a related note but I must emphasise different cluster entirely; our Production cluster which has yet to be upgraded (version as above) is uttering "[ERROR] InnoDB: Record field 15 len 18446744073709551615" which I've traced back to the same collection of tables in the same schema. I've been unable to identify any corruption in the tables themselves (by selecting out data and forcing index usage). The UAT cluster for which this report relates hasn't uttered these messaged, but I've a sneeking suspicion there is some, even if loose relationship between the issues.

Detail of the crash in the UAT env

*************************** 1. row ***************************
       Table: blobs
Create Table: CREATE TABLE `blobs` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `original_blob_id` int(11) DEFAULT NULL,
  `sys_name` varchar(100) DEFAULT NULL,
  `storage_loc` varchar(50) DEFAULT NULL,
  `storage_loc_pref` varchar(50) DEFAULT NULL,
  `storage_loc_specific` varchar(50) DEFAULT NULL,
  `save_path` varchar(255) DEFAULT NULL,
  `file_url` varchar(255) DEFAULT NULL,
  `filename` varchar(255) NOT NULL,
  `filesize` int(11) NOT NULL,
  `content_type` varchar(50) NOT NULL,
  `authcode` varchar(50) NOT NULL,
  `blob_hash` varchar(40) NOT NULL,
  `is_media_upload` tinyint(1) NOT NULL,
  `title` varchar(255) NOT NULL,
  `dim_w` int(11) NOT NULL,
  `dim_h` int(11) NOT NULL,
  `date_created` datetime NOT NULL,
  `is_temp` tinyint(1) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `IDX_896C3E356BBE2052` (`original_blob_id`),
  KEY `authcode_idx` (`authcode`),
  KEY `storage_loc_idx` (`storage_loc`,`storage_loc_pref`),
  KEY `sys_name_idx` (`sys_name`),
  KEY `date_created_idx` (`date_created`,`is_temp`),
  KEY `storage_loc_pref_idx` (`storage_loc_pref`),
  CONSTRAINT `FK_896C3E356BBE2052` FOREIGN KEY (`original_blob_id`) REFERENCES `blobs` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB AUTO_INCREMENT=7700386 DEFAULT CHARSET=utf

node 1 crash:

 
2021-06-22 12:35:02 11 [Note] WSREP: cluster conflict due to high priority abort for threads:
2021-06-22 12:35:02 11 [Note] WSREP: Winning thread:
   THD: 11, mode: applier, state: executing, conflict: no conflict, seqno: 89327026
   SQL: DELETE FROM blobs WHERE id = '7432858'???`^S^F
2021-06-22 12:35:02 11 [Note] WSREP: Victim thread:
   THD: 15, mode: applier, state: idle, conflict: no conflict, seqno: 89327028
   SQL: NULL
2021-06-22 12:35:02 0 [ERROR] WSREP: Trx 89327026 tries to abort slave trx 89327028. This could be caused by:
        1) unsupported configuration options combination, please check documentation.
        2) a bug in the code.
        3) a database corruption.
 Node consistency compromized, need to abort. Restart the node to resync with cluster.
210622 12:35:02 [ERROR] mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
 
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.
 
Server version: 10.3.29-MariaDB-1:10.3.29+maria~bionic-log
key_buffer_size=134217728
read_buffer_size=134217728
max_used_connections=26
max_threads=1002
thread_count=24
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 262821945 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x0 thread_stack 0x12c00000
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x560ee4349b8e]
/usr/sbin/mysqld(handle_fatal_signal+0x515)[0x560ee3dde8c5]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x7f9ca6c54980]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f9ca688ffb7]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7f9ca6891921]
/usr/sbin/mysqld(+0x90a914)[0x560ee3f68914]
/usr/sbin/mysqld(+0x90f83c)[0x560ee3f6d83c]
/usr/sbin/mysqld(handle_manager+0x1f3)[0x560ee3bf0a83]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76db)[0x7f9ca6c496db]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f)[0x7f9ca697271f]
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file...
Working directory at /srv/galera-uat/mysql
Resource Limits:
Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes
Max data size             unlimited            unlimited            bytes
Max stack size            8388608              unlimited            bytes
Max core file size        0                    unlimited            bytes
Max resident set          unlimited            unlimited            bytes
Max processes             15430                15430                processes
Max open files            4096                 4096                 files
Max locked memory         67108864             67108864             bytes
Max address space         unlimited            unlimited            bytes
Max file locks            unlimited            unlimited            locks
Max pending signals       15430                15430                signals
Max msgqueue size         819200               819200               bytes
Max nice priority         0                    0
Max realtime priority     0                    0
Max realtime timeout      unlimited            unlimited            us
Core pattern: |/usr/share/apport/apport %p %s %c %d %P %E

node 2 crash:

2021-06-22 12:35:02 15 [Note] WSREP: cluster conflict due to high priority abort for threads:
2021-06-22 12:35:02 15 [Note] WSREP: Winning thread:
   THD: 15, mode: applier, state: executing, conflict: no conflict, seqno: 89327026
   SQL: DELETE FROM blobs WHERE id = '7432858'???`^S^F
2021-06-22 12:35:02 15 [Note] WSREP: Victim thread:
   THD: 9, mode: applier, state: executing, conflict: no conflict, seqno: 89327028
   SQL: DELETE FROM blobs WHERE id = '7432867'???`^S^F
2021-06-22 12:35:02 0 [ERROR] WSREP: Trx 89327026 tries to abort slave trx 89327028. This could be caused by:
        1) unsupported configuration options combination, please check documentation.
        2) a bug in the code.
        3) a database corruption.
 Node consistency compromized, need to abort. Restart the node to resync with cluster.
210622 12:35:02 [ERROR] mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
 
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.
 
Server version: 10.3.29-MariaDB-1:10.3.29+maria~bionic-log
key_buffer_size=134217728
read_buffer_size=134217728
max_used_connections=8
max_threads=1002
thread_count=23
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 262821945 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
2021-06-22 12:35:02 9 [Warning] WSREP: conflict state after RBR event applying: 1, 89327028
2021-06-22 12:35:02 9 [Warning] WSREP: RBR event apply failed, rolling back: 89327028
stack_bottom = 0x0 thread_stack 0x12c00000
/usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x5591922ceb8e]
/usr/sbin/mysqld(handle_fatal_signal+0x515)[0x559191d638c5]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x7ffb20e45980]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7ffb20a80fb7]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7ffb20a82921]
/usr/sbin/mysqld(+0x90a914)[0x559191eed914]
/usr/sbin/mysqld(+0x90f83c)[0x559191ef283c]
/usr/sbin/mysqld(handle_manager+0x1f3)[0x559191b75a83]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76db)[0x7ffb20e3a6db]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f)[0x7ffb20b6371f]
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file...
Working directory at /srv/galera-uat/mysql
Resource Limits:
Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes
Max data size             unlimited            unlimited            bytes
Max stack size            8388608              unlimited            bytes
Max core file size        0                    unlimited            bytes
Max resident set          unlimited            unlimited            bytes
Max processes             15430                15430                processes
Max open files            4096                 4096                 files
Max locked memory         67108864             67108864             bytes
Max address space         unlimited            unlimited            bytes
Max file locks            unlimited            unlimited            locks
Max pending signals       15430                15430                signals
Max msgqueue size         819200               819200               bytes
Max nice priority         0                    0
Max realtime priority     0                    0
Max realtime timeout      unlimited            unlimited            us
Core pattern: |/usr/share/apport/apport %p %s %c %d %P %E



 Comments   
Comment by Glyn Astill [ 2021-06-24 ]

A quick update:

  • I've a gut feeling this is related to some sort of bug with foreign keys (see below for how many reference this table). Could be wrong.
  • I'll try and post a better trace shortly, at least with the symbols

MariaDB [(none)]> select * from information_schema.referential_constraints where constraint_schema = 'deskpro_trial' and referenced_table_name =  'blobs';
+--------------------+-------------------+---------------------+---------------------------+--------------------------+------------------------+--------------+-------------+-------------+------------------------------------+-----------------------+
| CONSTRAINT_CATALOG | CONSTRAINT_SCHEMA | CONSTRAINT_NAME     | UNIQUE_CONSTRAINT_CATALOG | UNIQUE_CONSTRAINT_SCHEMA | UNIQUE_CONSTRAINT_NAME | MATCH_OPTION | UPDATE_RULE | DELETE_RULE | TABLE_NAME                         | REFERENCED_TABLE_NAME |
+--------------------+-------------------+---------------------+---------------------------+--------------------------+------------------------+--------------+-------------+-------------+------------------------------------+-----------------------+
| def                | deskpro_trial     | FK_896C3E356BBE2052 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | blobs                              | blobs                 |
| def                | deskpro_trial     | FK_8A52D85AED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | article_comment_attachments        | blobs                 |
| def                | deskpro_trial     | FK_52C34BC7ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | communitytopic_comment_attachments | blobs                 |
| def                | deskpro_trial     | FK_C1AE81E58FE8AA9B | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | email_accounts                     | blobs                 |
| def                | deskpro_trial     | FK_C1AE81E5A63D3520 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | email_accounts                     | blobs                 |
| def                | deskpro_trial     | FK_DD4790B1ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | article_attachments                | blobs                 |
| def                | deskpro_trial     | FK_EC63B2F0ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | labels_blobs                       | blobs                 |
| def                | deskpro_trial     | FK_6EF14C99ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | news_attachments                   | blobs                 |
| def                | deskpro_trial     | FK_16AEB8D43B50817B | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | departments                        | blobs                 |
| def                | deskpro_trial     | FK_9FB18F87ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | download_comment_attachments       | blobs                 |
| def                | deskpro_trial     | FK_28166A26F0187A77 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | people                             | blobs                 |
| def                | deskpro_trial     | FK_F3CC6D4BED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | ticket_proc_log                    | blobs                 |
| def                | deskpro_trial     | FK_CC264F12ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | community_topic_attachments        | blobs                 |
| def                | deskpro_trial     | FK_427C1C7FF0187A77 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | organizations                      | blobs                 |
| def                | deskpro_trial     | FK_8728BA3AED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | topic_comment_attachments          | blobs                 |
| def                | deskpro_trial     | FK_832870B8ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | content_template_attachments       | blobs                 |
| def                | deskpro_trial     | FK_F06B468DED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | tickets_attachments                | blobs                 |
| def                | deskpro_trial     | FK_4B73A4B5ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | downloads                          | blobs                 |
| def                | deskpro_trial     | FK_F4D361D4ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | import_log_blobs                   | blobs                 |
| def                | deskpro_trial     | FK_CD563A19ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | people_files                       | blobs                 |
| def                | deskpro_trial     | FK_290FA7A5ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | email_account_logs                 | blobs                 |
| def                | deskpro_trial     | FK_57564A24ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | news_comment_attachments           | blobs                 |
| def                | deskpro_trial     | FK_B6A217CDED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | voice_recordings                   | blobs                 |
| def                | deskpro_trial     | FK_483B9D66ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | download_revisions                 | blobs                 |
| def                | deskpro_trial     | FK_AF6C0A203B50817B | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | agent_teams                        | blobs                 |
| def                | deskpro_trial     | FK_2C1DD95EED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | splash_image_property              | blobs                 |
| def                | deskpro_trial     | FK_88B2A69EED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | organization_files                 | blobs                 |
| def                | deskpro_trial     | FK_96E733E1ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | icon_property                      | blobs                 |
| def                | deskpro_trial     | FK_5C5E30A6ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | voice_missed_agent_calls           | blobs                 |
| def                | deskpro_trial     | FK_9195FF45D5F3B632 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | sendmail_sources                   | blobs                 |
| def                | deskpro_trial     | FK_9195FF45ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | sendmail_sources                   | blobs                 |
| def                | deskpro_trial     | FK_B4A87CA0ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | app2_app_asset_blob                | blobs                 |
| def                | deskpro_trial     | FK_BE17F9F2ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | RESTRICT    | voice_assets                       | blobs                 |
| def                | deskpro_trial     | FK_6F9D0D3DD5F3B632 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | SET NULL    | email_sources                      | blobs                 |
| def                | deskpro_trial     | FK_6F9D0D3DED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | email_sources                      | blobs                 |
| def                | deskpro_trial     | FK_FA590180ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | brand_assets                       | blobs                 |
| def                | deskpro_trial     | FK_E67B9F2ED3E8EA5  | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | snippet_changelog_blob             | blobs                 |
| def                | deskpro_trial     | FK_9CD2100EED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | app_assets                         | blobs                 |
| def                | deskpro_trial     | FK_D7E238A1ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | snippet_translation_blob           | blobs                 |
| def                | deskpro_trial     | FK_4E537458ED3E8EA5 | def                       | deskpro_trial            | PRIMARY                | NONE         | RESTRICT    | CASCADE     | theme_set_assets                   | blobs                 |
+--------------------+-------------------+---------------------+---------------------------+--------------------------+------------------------+--------------+-------------+-------------+------------------------------------+-----------------------+
40 rows in set (0.090 sec)

Comment by Glyn Astill [ 2021-06-28 ]

Latest crash shows as follows

2021-06-28 15:30:02 16 [Note] WSREP: cluster conflict due to high priority abort for threads:
2021-06-28 15:30:02 16 [Note] WSREP: Winning thread:
   THD: 16, mode: applier, state: executing, conflict: no conflict, seqno: 91293259
   SQL: DELETE FROM blobs WHERE id = '7513677'úêÙ`^S^F
2021-06-28 15:30:02 16 [Note] WSREP: Victim thread:
   THD: 9, mode: applier, state: idle, conflict: no conflict, seqno: 91293261
   SQL: NULL
2021-06-28 15:30:02 0 [ERROR] WSREP: Trx 91293259 tries to abort slave trx 91293261. This could be caused by:
        1) unsupported configuration options combination, please check documentation.
        2) a bug in the code.
        3) a database corruption.
 Node consistency compromized, need to abort. Restart the node to resync with cluster.
210628 15:30:02 [ERROR] mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
 
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.
 
Server version: 10.3.30-MariaDB-1:10.3.30+maria~bionic-log
key_buffer_size=134217728
read_buffer_size=134217728
max_used_connections=6
max_threads=1002
thread_count=21
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 262821960 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x0 thread_stack 0x12c00000
mysys/stacktrace.c:175(my_print_stacktrace)[0x56409ac40a4e]
sql/signal_handler.cc:218(handle_fatal_signal)[0x56409a6d58f5]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x7fdaf3022980]
linux/raise.c:51(__GI_raise)[0x7fdaf2c5dfb7]
stdlib/abort.c:81(__GI_abort)[0x7fdaf2c5f921]
/usr/sbin/mysqld(+0x90b274)[0x56409a85f274]
/usr/sbin/mysqld(+0x9101bc)[0x56409a8641bc]
handler/ha_innodb.cc:18831(Gis_read_stream::check_next_symbol(char))[0x56409a4e6e73]
nptl/pthread_create.c:463(start_thread)[0x7fdaf30176db]
x86_64/clone.S:97(clone)[0x7fdaf2d4071f]
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file...
Working directory at /srv/galera-uat/mysql
Resource Limits:
Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes
Max data size             unlimited            unlimited            bytes
Max stack size            8388608              unlimited            bytes
Max core file size        unlimited            unlimited            bytes
Max resident set          unlimited            unlimited            bytes
Max processes             15430                15430                processes
Max open files            102400               102400               files
Max locked memory         67108864             67108864             bytes
Max address space         unlimited            unlimited            bytes
Max file locks            unlimited            unlimited            locks
Max pending signals       15430                15430                signals
Max msgqueue size         819200               819200               bytes
Max nice priority         0                    0
Max realtime priority     0                    0
Max realtime timeout      unlimited            unlimited            us
Core pattern: |/usr/share/apport/apport %p %s %c %d %P %E

Appears to show the abort in a specific WITH_WSREP ifdef block,

What's the relevance of check_next_symbol ? This looks like it's something to do with gstream.cc. We have no geographic types in the schema this activity happens on.

Updated with libc symbols - unfortunately apport threw my core file away - hopefully get it on the next crash

Comment by Marko Mäkelä [ 2021-07-01 ]

glynastill, I took a quick look at this. I do not think that the messages InnoDB: Record field 15 len 18446744073709551615 are related to the rest. I suppose that those messages can be output by CHECK TABLE. Apparently we have a bug that rec_get_nth_field_offs() is returned a 64-bit value len=ULINT_UNDEFINED, while the function rec_validate() expects a 32-bit value, such as UNIV_SQL_NULL. Please file a separate bug for that (with a repeatable test case). I do not think that we have seen that in internal testing.

Comment by Jan Lindström (Inactive) [ 2021-07-01 ]

Based on attached stack trace this is another issue related to bg_wsrep_kill_trx() that is fixed on MDEV-25114.

Comment by Glyn Astill [ 2021-07-01 ]

Thank you very much @Marko Mäkelä and @Jan Lindström

Regarding the InnoDB field length issues - I've been unable to reproduce the issue; if I manage to do so I'll open a ticket. For now I'm just going to watch it closely to see if I can find any other symptoms other than the error.

I'm assuming the only immediate workaround is a revert to 10.3.27 or previous?

Comment by Jan Lindström (Inactive) [ 2021-10-30 ]

commit 157b3a637faa17f933e65adf1f533f0471025dad

Generated at Thu Feb 08 09:41:56 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.