Jason Barraclough wrote:I tested a database for this (DerbyDB) but was unimpressed with the results, as even with a non-blocking UI, the suggestions lagged for each letter typed (I suspect that it was due to repeated connections and closures of the database).
Well, for sure. So I would start by fixing your code so that it doesn't repeatedly create database connections. Just open a connection when your application starts up and leave it open.