welcome: please sign in
ARRbot / RBot Problems

Database

BDB problems:

A transaction per database and NO caching are lame.

Refactoring:

Currently, each plugin has its own database so that it can store its "settings". This is kinda overkill, since it would create a resident BDB engine for every plugin.

Why not just have one database the settings of all programs (the "registry"), and then let each plugin ask for its own database if it needs it?

For example, the markov plugin of the future could look like this:

This would create a new BDB database, and assign it to an instance variable called @markovchain (or just make an accessor function called markovchain), with whatever extra performance options are required.

IRC Core

Resources:

Plugin Architecture

It's pretty good the way it is, but the fact that each plugin is its own thread could be problematic. I've seen some race conditions and fighting between plugins. This bears looking into.

Overall Performance

I think there are some bitchin' leaks in RBot. A memory profiler would be a good idea.

Resources

ARRbot/RBot_Problems (last edited 2010-04-24 09:29:32 by localhost)