I'm having concurrency issues with sqlite3 and would like to implement a busy_handler as the reasonable busy_timeout value I've set isn't always sufficient.
I'm new to ruby and have tried creating both as a busy_handler method and class, searching mailing archives, Jamis Buck's blogs, and the net in general, but I'm apparently just missing it. The API doc for sqlite3-ruby is at http://sqlite-ruby.rubyforge.org/sqlite3 - the method signature is
busy_handler( data=nil ) {|data, retries| ...}
which confuses me right off the bat.
Can someone provide an example of a busy handler implementation and how it should/can be invoked?