NAME¶
KiokuDB::Role::Immutable - A role for objects that are never updated.
SYNOPSIS¶
with qw(KiokuDB::Role::Immutable);
DESCRIPTION¶
This is a role for objects that are never updated after they are inserted to the
database.
The object will be skipped entirely on all update/store operations unless it is
being collapsed for the first time, and its child objects will
not be
updated unless they are found while collapsing another object.
This means that:
my $immutable = $kiokudb->lookup($id);
$immutable->child->name("foo");
$kiokudb->update($immutable);
will not work, you need to update the child directly:
$kiokudb->update($immutable->child);