[MXS-3508] causal_reads=global results in missing data reads Created: 2021-04-21 Updated: 2021-08-13 Resolved: 2021-08-02 |
|
| Status: | Closed |
| Project: | MariaDB MaxScale |
| Component/s: | readwritesplit |
| Affects Version/s: | 2.5.10 |
| Fix Version/s: | 2.5.15 |
| Type: | Bug | Priority: | Major |
| Reporter: | Alex | Assignee: | markus makela |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Debian 10 |
||
| Issue Links: |
|
||||||||
| Description |
|
We have strange problem When setting causal_reads=global thera are missing data reads after inserts running 'show processlist' on slave I see MASTER_GTID_WAIT in processlist. But anyway we have missed data. Setting it back to fast fixes the problem
|
| Comments |
| Comment by markus makela [ 2021-04-21 ] |
|
Would you happen to have a test case that reproduces the problem? |
| Comment by Alex [ 2021-04-21 ] |
|
It is quite a simple case insert into table and then select from the table with primary key. And one in several handred time select returns no data. Master uses InnoDB, slave uses TokuDB |
| Comment by markus makela [ 2021-07-12 ] |
|
The value of causal_reads_timeout is relatively low at three seconds. If you increase this to 15 seconds, does the problem go away? |
| Comment by Alex [ 2021-07-15 ] |
|
Does it realy matter? As I can see in docs: "If the slave has not caught up to the master within the configured time, it will be retried on the master." |
| Comment by markus makela [ 2021-07-15 ] |
|
Hmm, that is true. The timeout being hit it wouldn't have the effect I thought it would have. Have you ever tested with causal_reads=local? |
| Comment by Alex [ 2021-07-15 ] |
|
yes. we are using local mode now in production |
| Comment by Alex [ 2021-08-13 ] |
|
Hi, When 2.5.15 will be publicly availible? |