[Dbix-class] updated release has broken my code
Dave Howorth
dhoworth at mrc-lmb.cam.ac.uk
Wed Jan 20 15:32:20 GMT 2016
I have various applications that use DBIx::Class. I just moved one of
them, which has been running OK for quite a while, to a new machine and
that meant it got a new environment, including an updated DBIx::Class.
It no longer runs, and it would help me to try to understand what is
broken in my own code if I could understand how the DBIC code works and
why it was changed. If anybody could give me any pointers, I'd be grateful.
My code is dying with the error message:
DBIx::Class::Row::store_column(): No such column '_type' on
TDB::Schema::Result::Node
This appears to be caused by a change in the code in DBIx::Class::Row in
store_column() in particular where
$self->throw_exception( "No such column '${column}'" )
unless exists $self->{_column_data}{$column} ||
$self->has_column($column);
has been replaced by
$self->throw_exception( "No such column '${column}' on " . ref $self )
unless exists $self->{_column_data}{$column} ||
$self->result_source->has_column($column);
If I put back the original code there, my application appears to work.
Now my TDB::Schema::Result::Node contains some gnarly code that it will
take me some time to regain familiarity with, and I think it would help
me if I understood why that change had been made in DBIx::Class::Row so
I might get some idea of what I need to change in my own code.
If anybody can point me to the change or provide any explanation, I'd
appreciate it.
Cheers, Dave
PS The old version says it is '0.08200' and the new is '0.082820'.
More information about the DBIx-Class
mailing list