[MXS-566] MEDIUMBLOB column update issues Created: 2016-02-08  Updated: 2016-02-18  Resolved: 2016-02-18

Status: Closed
Project: MariaDB MaxScale
Component/s: readconnroute
Affects Version/s: 1.2.1, 1.3.0
Fix Version/s: 1.4.0

Type: Bug Priority: Major
Reporter: Pawel Wysokinski Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None

Attachments: Text File application.log     File maxscale.cnf     Zip Archive maxscale_1_3_beta.zip     Text File maxscale_debug.log     Text File maxscale_error.log     Text File maxscale_trace.log     File server.cnf    
Issue Links:
Duplicate
duplicates MXS-477 readconnroute misinterprets data as C... Closed

 Description   

I am experiencing issues when doing update to mediumblobs in the database using MaxScale. Issues might also occur when doing inserts, however I am not able to reliably test it at the moment.
The blobs are about 600KB in size.

I verified that the blobs are saved to the database properly. But the application gets weird exceptions on a random basis. Sometimes there can be no exceptions at all.

Issues do not occur when the application is connecting directly to the master database. Reads are working fine regardless of the connection method.

I am attaching snips from application and MaxScale logs. It seems that the blob outputs are truncated.

I am also attaching the database and MaxScale configs. Nothing relevant appears in the database error log.

MariaDB version is 10.1.10.
MaxScale version is 1.2.1.
MaxScale is running on Centos 7, Linux 3.10.0-327.4.5.el7.x86_64 #1 SMP.

Could it be that those issues are somehow connected to the "LONGBLOB are currently not supported" limitation?

Please let me know if there is any more info I could provide to shed more light on this issue.



 Comments   
Comment by markus makela [ 2016-02-08 ]

If possible, please test with the latest 1.3.0-beta version of MaxScale: http://maxscale-jenkins.mariadb.com/ci-repository/release-1.3.0-debug/mariadb-maxscale/

Comment by Pawel Wysokinski [ 2016-02-11 ]

I performed a test with maxscale version 1.3.
Unfortunately, the results are similar.

I am attaching a log file for my test run - all the log entries are generated by the connection which has problems.
(On a side note: great work on improving the logs - much better to have it all in a single file)
Please see the strange Authentication Failed messages. No access denied exceptions occur when the component is accessing the database directly..

Comment by markus makela [ 2016-02-11 ]

Ah, I must apologize. I didn't recognize that the readconnroute module was in use and that module does not currently support inserting BLOB values. This has to do with how it tries to interpret the query stream for COM_CHANGE_USER commands from the client and it is possible that it misinterprets a BLOB column update as a COM_CHANGE_USER command. This causes the module to authenticate again even though it shouldn't.

Here's the limitations document with the mention of this: https://github.com/mariadb-corporation/MaxScale/blob/1.3.0/Documentation/About/Limitations.md#limitations-in-the-connection-router
It only mentions LONGBLOB but in reality all BLOB type data is not supported.

If possible, please test this with the readwritesplit module.

Comment by Pawel Wysokinski [ 2016-02-11 ]

Thank you for the prompt response.

I will check how readwritesplit module works with our workload and get back with the results.

Comment by Pawel Wysokinski [ 2016-02-18 ]

I confirm that readwritesplit seems to work fine in our test case.

Comment by markus makela [ 2016-02-18 ]

As this is expected behavior (for now) I will close it as a duplicate of MXS-477.

Generated at Thu Feb 08 04:00:17 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.