Percona 8.4 - readline vs editline

Description

I realize this isn't directly an issue with Percona Server and more of an issue of readline vs editline, but I was hoping you could help as it's a change from Percona 8.0 vs 8.4:

I noticed that the Percona 8.4 client has started using editline instead of readline. The Oracle MySQL client has used editline for the past several versions, but I have relied on Percona using readline because of some issues I've run into with editline. It looks like it was changed in https://github.com/percona/percona-server/pull/5132.

My .mysql_history file is around 200,000 lines and I search it extensively to find previous queries using Ctrl-R.

The issues I ran into with editline are:

  1. My .mysql_history file got blanked out when I ran the 8.4 client for the first time. I have a backup so I was able to restore it, but others may run into this too and lose their history upon upgrade. Using my backup, I was able to convert the file into editline format using a script I found here -

  2. Most importantly, searching in editline is much slower. I was able to get my mysql client to hang and max out my CPU while it was searching. With readline, the searching is instant.

  3. Exiting the mysql client now takes a second or two. With readline, exiting was instant.

  4. Less important, but it's not as easy to read the .mysql_history file in a text editor with editline as spaces are replaced with \040.

Is there a way that I could switch to use readline again?

Thanks for your help.

Environment

None

Activity

Show:

Aaditya Dubey April 24, 2025 at 2:41 PM

Hi

Thank you for the report.
We switched back to editline to avoid further potential conflicts from the upstream code. Unfortunately, we are unable to help on this front; however, you can still connect with our technical forum here at for further help.

Won't Do

Details

Assignee

Reporter

Needs QA

Priority

Smart Checklist

Created February 28, 2025 at 1:44 AM
Updated April 24, 2025 at 2:41 PM
Resolved April 24, 2025 at 2:41 PM