[MDEV-31720] Cursor protocol returns empty string instead of NULL for super-aggregated column for SELECT WITH ROLLUP Created: 2023-07-17  Updated: 2023-11-28

Status: Open
Project: MariaDB Server
Component/s: None
Affects Version/s: 10.4, 10.5, 10.6, 10.9, 10.10, 11.0, 11.1, 11.2
Fix Version/s: 10.4, 10.5, 10.6, 11.1, 11.2

Type: Bug Priority: Major
Reporter: Lena Startseva Assignee: Oleksandr Byelkin
Resolution: Unresolved Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-31005 Make working cursor-protocol Stalled

 Description   

Testcase (run MTR test with --cursor-protocol):

CREATE TABLE `example1463` (
  `Customer` varchar(255) NOT NULL,
  `DeliveryStatus` varchar(255) NOT NULL,
  `OrderSize` int(11) NOT NULL
);
INSERT INTO example1463 VALUES ('Charlie', 'Success', 100);
INSERT INTO example1463 VALUES ('David', 'Success', 110);
INSERT INTO example1463 VALUES ('Charlie', 'Failed', 200);
INSERT INTO example1463 VALUES ('David', 'Success', 100);
INSERT INTO example1463 VALUES ('David', 'Unknown', 100);
INSERT INTO example1463 VALUES ('Edward', 'Success', 150);
INSERT INTO example1463 VALUES ('Edward', 'Pending', 150);
 
SELECT Customer, Success, SUM(OrderSize)
 FROM (SELECT Customer,
 CASE WHEN DeliveryStatus='Success' THEN 'Yes' ELSE 'No' END AS Success,
 OrderSize
 FROM example1463) as subQ
 GROUP BY Success, Customer
 WITH ROLLUP;
 
 DROP TABLE example1463;

Expected result:

Customer	Success	SUM(OrderSize)
Charlie	No	200
David	No	100
Edward	No	150
NULL	No	450
Charlie	Yes	100
David	Yes	210
Edward	Yes	150
NULL	Yes	460
NULL	NULL	910

Actual result:

Customer	Success	SUM(OrderSize)
Charlie	No	200
David	No	100
Edward	No	150
	No	450
Charlie	Yes	100
David	Yes	210
Edward	Yes	150
	Yes	460
		910


Generated at Thu Feb 08 10:25:57 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.