Dave Rolsky


Alzabo::Exceptions - Creates all exception subclasses used in Alzabo.


  use Alzabo::Exceptions;


Using this class creates all the exceptions classes used by Alzabo (via the Exception::Class class). If the environment variable 'ALZABO_DEBUG' is true, then it will turn on stacktrace generation for all the exception classes.

See Exception::Class for more information on how this is done.


  • Alzabo::Exception

    This is the base class for all exceptions generated within Alzabo (all exceptions should return true for $@->isa('Alzabo::Exception') except those that are generated via internal Perl errors).

  • Alzabo::Exception::Cache

    Base class for cache-related exceptions.

  • Alzabo::Exception::Cache::Deleted

    An attempt was made to operate on a row that had been deleted in the cache. In this case there is no point in attempting further operations on the row, as it is no longer in the database.

  • Alzabo::Exception::Cache::Expired

    An attempt was made to operate on a row that had been expired in the cache. The row will refresh itself before returning this exception so it may be desirable to attempt the operation that caused this error again.

  • Alzabo::Exception::Driver

    An error occured while accessing a database. See Alzabo::Driver for more details.

  • Alzabo::Exception::Eval

    An attempt to eval something returned an error.

  • Alzabo::Exception::Logic

    Alzabo was asked to do something logically impossible, like retrieve rows for a table without a primary key.

  • Alzabo::Exception::NoSuchRow

    An attempt was made to fetch data from the database with a primary key that does not actually exist in the specified table.

  • Alzabo::Exception::Params

    This exception is thrown when there is a problem with the parameters passed to a method or function. These problems can include missing parameters, invalid values, etc.

  • Alzabo::Exception::RDBMSRules

    A rule for the relevant RDBMS was violated (bad schema name, table name, column attribute, etc.)

  • Alzabo::Exception::ReferentialIntegrity

    An insert/update/delete was attempted that would violate referential integrity constraints.

  • Alzabo::Exception::SQL

    An error thrown when there is an attempt to generate invalid SQL via the Alzabo::SQLMaker module.

  • Alzabo::Exception::System

    Some sort of system call (file read/write, stat, etc.) failed.

  • Alzabo::Exception::VirtualMethod

    A virtual method was called. This indicates that this method should be subclassed.


Dave Rolsky, <autarch@urth.org>