[MXS-4388] LOAD DATA LOCAL INFILE and changing autocomit causing stuck Created: 2022-11-10  Updated: 2022-11-24  Resolved: 2022-11-24

Status: Closed
Project: MariaDB MaxScale
Component/s: Core
Affects Version/s: 6.4.2, 6.4.3, 22.08.2
Fix Version/s: 6.4.4, 22.08.3

Type: Bug Priority: Major
Reporter: Jozef Kováč Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None
Environment:

Oracle Linux 8.6 x86_64


Attachments: File maxscale.cnf     File maxscale.log     File test.sql    
Sprint: MXS-SPRINT-171

 Description   

After updating maxscale from 2.5.21 to 6.4.2 some of queries started getting stuck. After reducing queries inside session for purpose of isolating problem we find out that disabling autocommit executing LOAD DATA LOCAL INFILE and enbling again at least twice in single session causing stuck.
Session is eventually killed after MariaDB backend timeout is reached and returning error code 1927.

Maxscale configuration, full log at info level and example query added to attachment.



 Comments   
Comment by markus makela [ 2022-11-21 ]

The problem is here:

    if (expecting_response)
    {
        ++m_num_responses;
        m_session->retain_statement(buffer.get());
    }

The response count doesn't realize it's a LOAD DATA LOCAL INFILE.

Comment by markus makela [ 2022-11-24 ]

The LOAD DATA LOCAL INFILE tracking is now correctly done at the client protocol level instead of globally for the whole session.

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