Hi,
If you use find_or_new to check for the existence of a row, and it
return empty (in_storage is not set) can you add to the the object
before you insert? A bit like this:
  my $obj = $rs->find_or_new({ blah => 'blarg' });
  if ($obj->in_storage) {
    # do whatever else you wanted if it was a new row
  }
  else {
$obj->insert;
  }