¡Aaah, mico YO! Ahora sí lo tengo...
Gracias, explorer, el problema fue solucionado...
Esto fue lo importante que no tuve en cuenta:
Using text Syntax Highlighting
Resumen: el fallo está en el return $self, y en llamar a retrieve() con $usuario.
Primero, debes aclararte una cosa: estás llamando a retrieve() siempre con el mismo $usuario, así que siempre estás modificando el mismo $self->{data}.
Y lo que devuelves con return $self es el propio $usuario, así que estás guardando referencias a $usuario en todos los elementos de $contents.
Coloreado en 0.000 segundos, usando
GeSHi 1.0.8.4
Entonces lo mejor fue modificarlo dentro del map{} para crear un nuevo usuario. ¡je,je! y no usar el mismo.
map( $_->{'creador'} = MyApp::Db::User->new()->retrieve( $_->{'created_by'} ) , @$contents);Gracias, explorer, problema solucionado...