[MDEV-24020] Trim with remove_str Fails on Spider SE Created: 2020-10-25  Updated: 2021-07-28  Resolved: 2021-07-28

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - Spider
Affects Version/s: 10.3.25
Fix Version/s: 10.3.31, 10.4.21, 10.5.12, 10.6.4

Type: Bug Priority: Major
Reporter: Yongxin Xu Assignee: Nayuta Yanagisawa (Inactive)
Resolution: Fixed Votes: 0
Labels: bug, spider
Environment:

ALL



 Description   

When using trim() with remove_str (for example trim(leading '*' from col_a)) using the spider storage engine, it fails with ERROR 1582 (42000): Incorrect parameter count in the call to native function 'ltrim')

How to Repeat

1. Create tables on backends:

bk.sql

CREATE TABLE t1 (
    id int,
    info varchar(30)
)ENGINE=InnoDB;

2. Create the table on spider:

spider.sql

CREATE TABLE t1 (
    id int,
    info varchar(30)
)ENGINE=Spider COMMENT='wrapper "mysql", table "t1"'
PARTITION BY LIST (id%2) (
    PARTITION pt1 VALUES IN (0) COMMENT = 'srv "backend0"' ENGINE=SPIDER,
    PARTITION pt2 VALUES IN (1) COMMENT = 'srv "backend1"' ENGINE=SPIDER
);

3. Then, execute a SQL with trim() on spider:

trim.sql

MariaDB [test]> UPDATE t1 SET info = trim(LEADING '[' FROM info) WHERE id = 12345;

Then, it fails with error

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'ltrim'

Suggested fix

https://github.com/MariaDB/server/pull/1662



 Comments   
Comment by Sergei Golubchik [ 2021-07-22 ]

nayuta-yanagisawa, would you mind reviewing it and applying, if it looks ok? thanks!

Comment by Nayuta Yanagisawa (Inactive) [ 2021-07-22 ]

serg Sure, but I will work on https://github.com/MariaDB/server/pull/1842 , because the one in the description is closed.

Comment by Yongxin Xu [ 2021-07-26 ]

I create a new pull request on https://github.com/MariaDB/server/pull/1879 for this fix, since I pressed the wrong button in the previous pr.

Comment by Nayuta Yanagisawa (Inactive) [ 2021-07-28 ]

pushed to bb-10.3-mdev-24020 https://github.com/MariaDB/server/commit/0f45ac60342dccdd7c0041659abf2a3fe16a4a7b

Comment by Nayuta Yanagisawa (Inactive) [ 2021-07-28 ]

The spider does not push down the TRIM function on SELECT statements. So, the issue is about UPDATE.

Comment by Nayuta Yanagisawa (Inactive) [ 2021-07-28 ]

Closed by https://github.com/MariaDB/server/commit/43099af95bc554ff870b00bbe965dbcf4662ec86

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