My questions are:
- Why did the web server die when sqlite3 had a problem?
sqlite3 is a client library with no server. The process using
it (WEBrick running your Rails program) is segfaulting, so it's
not sqlite3 that is having the problem, per se, but your program
indirectly due to its usage of sqlite3.
- Is it because it's development mode?
- Or is it because it's webrick which is not a very strong web server?
You won't need to worry about this in production, because the web server
will not be processing Rails requests. Instead, it will be serving static
content and passing dynamic requests back to the application layer servers,
perhaps mongrel or FCGI.
As in all things, it's very important in a production environment to be
certain that if a process fails for any reason, it will be restarted.