NAME
DBIx::Class::Manual::Troubleshooting - Got a problem? Shoot it.
"Can't locate storage blabla"
You're trying to make a query on a non-connected schema. Make sure you got the current resultset from $schema->resultset('Artist') on a schema object you got back from connect().
Tracing SQL
The DBIX_CLASS_STORAGE_DBI_DEBUG
environment variable controls SQL tracing, so to see what is happening try
export DBIX_CLASS_STORAGE_DBI_DEBUG=1
Alternatively use the storage->debug
class method:-
$class->storage->debug(1);
To send the output somewhere else set debugfh:-
$class->storage->debugfh(IO::File->new('/tmp/trace.out', 'w');
Alternatively you can do this with the environment variable too:-
export DBIX_CLASS_STORAGE_DBI_DEBUG="1=/tmp/trace.out"
Can't locate method result_source_instance
For some reason the table class in question didn't load fully, so the ResultSource object for it hasn't been created. Debug this class in isolation, then try loading the full schema again.
Can't get last insert ID under Postgres with serial primary keys
Older DBI and DBD::Pg versions do not handle last_insert_id
correctly, causing code that uses auto-incrementing primary key columns to fail with a message such as:
Can't get last insert id at /.../DBIx/Class/Row.pm line 95
In particular the RHEL 4 and FC3 Linux distributions both ship with combinations of DBI and DBD::Pg modules that do not work correctly.