[MDEV-19321] Cursor flag set incorrectly in COM_STMT_EXECUTE response Created: 2019-04-24  Updated: 2023-04-14

Status: Open
Project: MariaDB Server
Component/s: Prepared Statements, Protocol
Affects Version/s: 10.3.14
Fix Version/s: 10.4

Type: Bug Priority: Major
Reporter: Robert Humphries Assignee: Dmitry Shulga
Resolution: Unresolved Votes: 0
Labels: None
Environment:

CentOS 7


Attachments: File packets.pcapng     File storedProcedures.sql    
Issue Links:
Problem/Incident
causes CONC-424 mysql_stmt_store_result returns empty... Closed
Relates
relates to MDEV-17252 mysql_stmt_fetch error during fetch o... Stalled

 Description   

I am not certain this is a MariaDB bug. I am also at this point unable to test if it exists on MySQL. A bug has been filed with PHP, where I was using the mysqlnd client

When you prepare a statement that is a 'CALL' statement, and the stored procedure in the 'CALL' statement uses a CURSOR internally, the COM_STMT_EXECUTE response has the SERVER_STATUS_CURSOR_EXISTS server status flag set. The documentation says this is only used with COM_STMT_FETCH, and I can't see any reason why it is indicated if a cursor was used in the stored procedure or not (regardless if the data came from the cursor, or even if a fetch was executed).

I am not sure if it is duplicate of MDEV-17252, as that appears to be related but not identical.



 Comments   
Comment by Dmitry Shulga [ 2023-04-14 ]

10.3 is EOL so change the fix version to 10.4

Generated at Thu Feb 08 08:50:46 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.