Weird error on Owner Change: "Could not change owner. Group already has member"


I’m using RT 3.6.6, having three Groups defined.

The group I’m in, has all rights granted on the global level.

But still I’m not able to take some of the tickets currently owned by “Nobody”.

Whenever I try to change the owner of some tickets (using the “Basics” section
in the ticket view), I’m getting the error message: “Could not change owner.
Group already has member”

I tried to debug this issue. So I found out that the first part of the error
message is originated from lib/RT/ line 3079:

 my ( $add_id, $add_msg ) = $self->OwnerGroup->_AddMember(
                                    PrincipalId => $NewOwnerObj->PrincipalId,
                                    InsideTransaction => 1 );
 unless ($add_id) {
     return ( 0, $self->loc("Could not change owner. ") . $add_msg );

Digging further down, I was wondering why the AddMember function is used at all?

The second part of the error “Group already has member” is originated from
lib/RT/ line 985:

 if ( $self->HasMember( $new_member_obj ) ) {

     #User is already a member of this group. no need to add it
     return ( 0, $self->loc("Group already has member") );

Why would it be required, to add the user to a group, when I’m just trying to
change the owner of the ticket?

Commenting out the block in starting with "unless ($add_id) {"
fixes the issue, but I’m not sure if this is breaking anything.

Thanks in advance for any advice.


Lars Br�uer GmbH MPeXnetworks
Werner-Vo�-Damm 62
D-12101 Berlin Tel: ++49 - 30 - 780 97 180
Germany Fax: ++49 - 30 - 780 97 181

HRB 76688, Berlin Amtsgericht Charlottenburg
Gesch�ftsf�hrer: Gregor Lawatscheck
Robert Lawatscheck
Lars Br�uer