You are here

User trap of the week: Android SDK sqlite3 libreadline

This user trap was a nice one. I noticed a month or so ago that the "libreadline" support in my "sqlite3" executable on my home box was no longer working. For the uninitiated, this means that I couldn't use line history and line editing when working on database queries. Really annoying.

Tonight I decided I would fix it, dammit. An hour or so of careful investigation later I finally noticed that some joker had stuck a copy of sqlite3 without readline support in the Android SDK "tools" directory; my path stuff was configured to find that one first.

For the record, that's really user-hostile behavior. Don't stick spare copies of standard utilities where I will run into them. Yes, I probably should have my path in the other order, or sooner or later a hostile 'ls' is going to get me. Oh well.

Update: I've been working for probably 10 hours on optimizing a particular sqlite3 query which was inexplicably slow (a minute or so), which is what started all this. Guess what? With the current Debian sqlite3, it runs instantly! Dammit. Fob