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);