RT 3.4.0 -- 2 Nobody

Hello,

I use RT 3.4.0 with PostgreSQL 7.4.5, Apache/1.3.31 on FreeBSD 4.10-RELEASE.

2 users with name “Nobody” showing up in the list of possible ticket owners
for a queue.
How I should solve this problem?

In a database such user only one:

rt3=> SELECT id,name from users where name=‘Nobody’;
id | name
10 | Nobody
(1 row)

Yours faithfully, Victoria

Hello,

I use RT 3.4.0 with PostgreSQL 7.4.5, Apache/1.3.31 on FreeBSD 4.10-RELEASE.

2 users with name “Nobody” showing up in the list of possible ticket owners
for a queue.
How I should solve this problem?

Can you email us database logs for when RT is generating the page with
the “Select Owner” widget on it?

-----Original Message-----
From: Jesse Vincent [mailto:jesse@bestpractical.com]
Sent: Wednesday, February 02, 2005 6:43 PM
To: Kalinitcheva Victoria
Cc: ‘rt-users@lists.bestpractical.com’
Subject: Re: [rt-users] RT 3.4.0 – 2 Nobody

2 users with name “Nobody” showing up in the list of
possible ticket
owners for a queue. How I should solve this problem?

Can you email us database logs for when RT is generating the
page with the “Select Owner” widget on it?

Is it the necessary information?

Feb 3 09:26:06 suppcard postgres[46361]: [96-1] LOG: duration: 1.466 ms
statement:
Feb 3 09:26:06 suppcard postgres[46361]: [97-1] LOG: duration: 0.330 ms
statement:
Feb 3 09:26:06 suppcard postgres[46361]: [98-1] LOG: duration: 0.846 ms
statement: SET TIME ZONE ‘GMT’
Feb 3 09:26:06 suppcard postgres[46361]: [99-1] LOG: duration: 0.572 ms
statement: SET DATESTYLE TO
‘ISO’
Feb 3 09:26:06 suppcard postgres[46361]: [100-1] LOG: duration: 17.246 ms
statement: SELECT *
FROM Users WHERE
Feb 3 09:26:06 suppcard postgres[46361]: [100-2] LOWER(Name) =
‘rt_system’
Feb 3 09:26:06 suppcard postgres[46361]: [101-1] LOG: duration: 6.380 ms
statement: SELECT *
FROM Users WHERE LOWER(Name)
Feb 3 09:26:06 suppcard postgres[46361]: [101-2] = ‘nobody’
Feb 3 09:26:06 suppcard postgres[46361]: [102-1] LOG: duration: 0.428 ms
statement:
Feb 3 09:26:06 suppcard postgres[46361]: [103-1] LOG: duration: 3.305 ms
statement: SELECT
a_session FROM sessions
Feb 3 09:26:06 suppcard postgres[46361]: [103-2] WHERE id =
‘ed48fe0453cbff19d60ecb0e87bd8a5a’ FOR UPDATE
Feb 3 09:26:06 suppcard postgres[46361]: [104-1] LOG: duration: 2.699 ms
statement: SELECT *
FROM Users WHERE id = ‘48’
Feb 3 09:26:06 suppcard postgres[46361]: [105-1] LOG: duration: 32.571 ms
statement:
SELECT * FROM Groups WHERE
Feb 3 09:26:06 suppcard postgres[46361]: [105-2] LOWER(Domain) =
‘systeminternal’ AND LOWER(Type) = ‘privileged’
Feb 3 09:26:06 suppcard postgres[46361]: [106-1] LOG: duration: 1.963 ms
statement:
SELECT * FROM Principals
Feb 3 09:26:06 suppcard postgres[46361]: [106-2] WHERE
LOWER(PrincipalType) = ‘user’ AND ObjectId = ‘48’
Feb 3 09:26:06 suppcard postgres[46361]: [107-1] LOG: duration: 13.888 ms
statement:
SELECT * FROM GroupMembers
Feb 3 09:26:06 suppcard postgres[46361]: [107-2] WHERE GroupId = ‘4’ AND
MemberId = ‘48’
Feb 3 09:26:06 suppcard postgres[46361]: [108-1] LOG: duration: 3.078 ms
statement: SELECT *
FROM Tickets WHERE id =
Feb 3 09:26:06 suppcard postgres[46361]: [108-2] ‘914’
Feb 3 09:26:06 suppcard postgres[46361]: [109-1] LOG: duration: 18.552 ms
statement:
SELECT
Feb 3 09:26:06 suppcard postgres[46361]: [109-2] ACL.id from ACL, Groups,
Principals, CachedGroupMembers WHERE (ACL.RightName = ‘SuperUser’ OR
ACL.RightName = ‘ModifySelf’) AND
Feb 3 09:26:06 suppcard postgres[46361]: [109-3] Principals.Disabled = 0
AND CachedGroupMembers.Disabled = 0 AND Principals.id = Groups.id AND
Principals.id =
Feb 3 09:26:06 suppcard postgres[46361]: [109-4]
CachedGroupMembers.GroupId AND CachedGroupMembers.MemberId = ‘48’ AND (
ACL.ObjectType = ‘RT::System’ OR (ACL.ObjectType =
Feb 3 09:26:06 suppcard postgres[46361]: [109-5] ‘RT::System’ AND
ACL.ObjectId = ‘1’)) AND ( ( ACL.PrincipalId = Principals.id AND
ACL.PrincipalType = ‘Group’ AND
Feb 3 09:26:06 suppcard postgres[46361]: [109-6] (Groups.Domain =
‘SystemInternal’ OR Groups.Domain = ‘UserDefined’ OR Groups.Domain =
‘ACLEquivalence’ OR Groups.Domain =
Feb 3 09:26:06 suppcard postgres[46361]: [109-7] ‘Personal’)) ) LIMIT 1
Feb 3 09:26:06 suppcard postgres[46361]: [110-1] LOG: duration: 2.344 ms
statement: SELECT *
FROM Queues WHERE id = ‘1’
Feb 3 09:26:06 suppcard postgres[46361]: [111-1] LOG: duration: 19.221 ms
statement:

Feb 3 09:26:06 suppcard postgres[46361]: [111-2] SELECT ACL.id
from ACL, Groups, Principals, CachedGroupMembers WHERE (ACL.RightName =
‘SuperUser’ OR ACL.RightName =
Feb 3 09:26:06 suppcard postgres[46361]: [111-3] ‘ModifyTicket’) AND
Principals.Disabled = 0 AND CachedGroupMembers.Disabled = 0 AND
Principals.id = Groups.id AND Principals.id
Feb 3 09:26:06 suppcard postgres[46361]: [111-4] =
CachedGroupMembers.GroupId AND CachedGroupMembers.MemberId = ‘48’ AND (
ACL.ObjectType = ‘RT::System’ OR (ACL.ObjectType =
Feb 3 09:26:06 suppcard postgres[46361]: [111-5] ‘RT::Ticket’ AND
ACL.ObjectId = ‘914’) OR (ACL.ObjectType = ‘RT::Queue’ AND ACL.ObjectId =
‘1’)) AND ( ( ACL.PrincipalId =
Feb 3 09:26:06 suppcard postgres[46361]: [111-6] Principals.id AND
ACL.PrincipalType = ‘Group’ AND (Groups.Domain = ‘SystemInternal’ OR
Groups.Domain = ‘UserDefined’ OR
Feb 3 09:26:06 suppcard postgres[46361]: [111-7] Groups.Domain =
‘ACLEquivalence’ OR Groups.Domain = ‘Personal’)) ) LIMIT 1
Feb 3 09:26:06 suppcard postgres[46361]: [112-1] LOG: duration: 19.309 ms
statement:

Feb 3 09:26:06 suppcard postgres[46361]: [112-2] SELECT ACL.id
from ACL, Groups, Principals, CachedGroupMembers WHERE (ACL.RightName =
‘SuperUser’ OR ACL.RightName =
Feb 3 09:26:06 suppcard postgres[46361]: [112-3] ‘ShowTicket’) AND
Principals.Disabled = 0 AND CachedGroupMembers.Disabled = 0 AND
Principals.id = Groups.id AND Principals.id =
Feb 3 09:26:06 suppcard postgres[46361]: [112-4]
CachedGroupMembers.GroupId AND CachedGroupMembers.MemberId = ‘48’ AND (
ACL.ObjectType = ‘RT::System’ OR (ACL.ObjectType =
Feb 3 09:26:06 suppcard postgres[46361]: [112-5] ‘RT::Ticket’ AND
ACL.ObjectId = ‘914’) OR (ACL.ObjectType = ‘RT::Queue’ AND ACL.ObjectId =
‘1’)) AND ( ( ACL.PrincipalId =
Feb 3 09:26:06 suppcard postgres[46361]: [112-6] Principals.id AND
ACL.PrincipalType = ‘Group’ AND (Groups.Domain = ‘SystemInternal’ OR
Groups.Domain = ‘UserDefined’ OR
Feb 3 09:26:06 suppcard postgres[46361]: [112-7] Groups.Domain =
‘ACLEquivalence’ OR Groups.Domain = ‘Personal’)) ) LIMIT 1
Feb 3 09:26:06 suppcard postgres[46361]: [113-1] LOG: duration: 19.233 ms
statement:

Feb 3 09:26:06 suppcard postgres[46361]: [113-2] SELECT ACL.id
from ACL, Groups, Principals, CachedGroupMembers WHERE (ACL.RightName =
‘SuperUser’ OR ACL.RightName =
Feb 3 09:26:06 suppcard postgres[46361]: [113-3] ‘OwnTicket’) AND
Principals.Disabled = 0 AND CachedGroupMembers.Disabled = 0 AND
Principals.id = Groups.id AND Principals.id =
Feb 3 09:26:06 suppcard postgres[46361]: [113-4]
CachedGroupMembers.GroupId AND CachedGroupMembers.MemberId = ‘48’ AND (
ACL.ObjectType = ‘RT::System’ OR (ACL.ObjectType =
Feb 3 09:26:06 suppcard postgres[46361]: [113-5] ‘RT::Ticket’ AND
ACL.ObjectId = ‘914’) OR (ACL.ObjectType = ‘RT::Queue’ AND ACL.ObjectId =
‘1’)) AND ( ( ACL.PrincipalId =
Feb 3 09:26:06 suppcard postgres[46361]: [113-6] Principals.id AND
ACL.PrincipalType = ‘Group’ AND (Groups.Domain = ‘SystemInternal’ OR
Groups.Domain = ‘UserDefined’ OR
Feb 3 09:26:06 suppcard postgres[46361]: [113-7] Groups.Domain =
‘ACLEquivalence’ OR Groups.Domain = ‘Personal’)) ) LIMIT 1
Feb 3 09:26:06 suppcard postgres[46361]: [114-1] LOG: duration: 17.965 ms
statement:
SELECT
Feb 3 09:26:06 suppcard postgres[46361]: [114-2] ACL.id from ACL, Groups,
Principals, CachedGroupMembers WHERE (ACL.RightName = ‘SuperUser’ OR
ACL.RightName = ‘SuperUser’) AND
Feb 3 09:26:06 suppcard postgres[46361]: [114-3] Principals.Disabled = 0
AND CachedGroupMembers.Disabled = 0 AND Principals.id = Groups.id AND
Principals.id =
Feb 3 09:26:06 suppcard postgres[46361]: [114-4]
CachedGroupMembers.GroupId AND CachedGroupMembers.MemberId = ‘48’ AND (
ACL.ObjectType = ‘RT::System’ OR (ACL.ObjectType =
Feb 3 09:26:06 suppcard postgres[46361]: [114-5] ‘RT::System’ AND
ACL.ObjectId = ‘1’)) AND ( ( ACL.PrincipalId = Principals.id AND
ACL.PrincipalType = ‘Group’ AND
Feb 3 09:26:06 suppcard postgres[46361]: [114-6] (Groups.Domain =
‘SystemInternal’ OR Groups.Domain = ‘UserDefined’ OR Groups.Domain =
‘ACLEquivalence’ OR Groups.Domain =
Feb 3 09:26:06 suppcard postgres[46361]: [114-7] ‘Personal’)) ) LIMIT 1
Feb 3 09:26:07 suppcard postgres[46360]: [336-1] LOG: duration: 1.607 ms
statement:
Feb 3 09:26:07 suppcard postgres[46360]: [337-1] LOG: duration: 0.369 ms
statement:
Feb 3 09:26:07 suppcard postgres[46360]: [338-1] LOG: duration: 0.901 ms
statement: SET TIME ZONE ‘GMT’
Feb 3 09:26:07 suppcard postgres[46360]: [339-1] LOG: duration: 0.627 ms
statement: SET DATESTYLE TO
‘ISO’
Feb 3 09:26:07 suppcard postgres[46360]: [340-1] LOG: duration: 9.474 ms
statement: SELECT *
FROM Users WHERE
Feb 3 09:26:07 suppcard postgres[46360]: [340-2] LOWER(Name) =
‘rt_system’
Feb 3 09:26:07 suppcard postgres[46360]: [341-1] LOG: duration: 6.446 ms
statement: SELECT *
FROM Users WHERE
Feb 3 09:26:07 suppcard postgres[46360]: [341-2] LOWER(Name) = ‘nobody’
Feb 3 09:26:07 suppcard postgres[46361]: [115-1] LOG: duration: 11.255 ms
statement:
SELECT main.* FROM
Feb 3 09:26:07 suppcard postgres[46361]: [115-2] CustomFields main WHERE
((main.Disabled = ‘0’)) AND ((main.LookupType =
‘RT::User’)or(main.LookupType = NULL)) ORDER BY
Feb 3 09:26:07 suppcard postgres[46361]: [115-3] main.Name ASC
Feb 3 09:26:07 suppcard postgres[46361]: [116-1] LOG: duration: 3.181 ms
statement:
SELECT main.* FROM
Feb 3 09:26:07 suppcard postgres[46361]: [116-2] CustomFields main WHERE
((main.Disabled = ‘0’)) AND ((main.LookupType =
‘RT::Group’)or(main.LookupType = NULL)) ORDER BY
Feb 3 09:26:07 suppcard postgres[46361]: [116-3] main.Name ASC
Feb 3 09:26:09 suppcard postgres[46361]: [117-1] LOG: duration: 1715.859
ms statement:

Feb 3 09:26:09 suppcard postgres[46361]: [117-2]
SELECT DISTINCT main.* FROM Users main , Principals Principals_1, ACL ACL_2,
Groups Groups_3,
Feb 3 09:26:09 suppcard postgres[46361]: [117-3] CachedGroupMembers
CachedGroupMembers_4 WHERE ((ACL_2.RightName = ‘OwnTicket’)) AND
((CachedGroupMembers_4.MemberId =
Feb 3 09:26:09 suppcard postgres[46361]: [117-4] Principals_1.id)) AND
((Groups_3.id = CachedGroupMembers_4.GroupId)) AND ((Principals_1.Disabled =
‘0’)or(Principals_1.Disabled
Feb 3 09:26:09 suppcard postgres[46361]: [117-5] = ‘0’)) AND
((Principals_1.id != ‘1’)) AND ((main.id = Principals_1.id)) AND ( (
ACL_2.PrincipalId = Groups_3.id AND
Feb 3 09:26:09 suppcard postgres[46361]: [117-6] ACL_2.PrincipalType =
‘Group’ AND ( Groups_3.Domain = ‘SystemInternal’ OR Groups_3.Domain =
‘UserDefined’ OR Groups_3.Domain =
Feb 3 09:26:09 suppcard postgres[46361]: [117-7] ‘ACLEquivalence’)) OR ( (
(Groups_3.Domain = ‘RT::Queue-Role’ AND Groups_3.Instance = 1) OR (
Groups_3.Domain =
Feb 3 09:26:09 suppcard postgres[46361]: [117-8] ‘RT::Ticket-Role’ AND
Groups_3.Instance = 914) ) AND Groups_3.Type = ACL_2.PrincipalType) ) AND
(ACL_2.ObjectType =
Feb 3 09:26:09 suppcard postgres[46361]: [117-9] ‘RT::System’ OR
(ACL_2.ObjectType = ‘RT::Queue’ AND ACL_2.ObjectId = 1) ) ORDER BY main.Name
ASC
Feb 3 09:26:09 suppcard postgres[46361]: [118-1] LOG: duration: 18.298 ms
statement:
SELECT * FROM
Feb 3 09:26:09 suppcard postgres[46361]: [118-2] Groups WHERE Instance =
‘914’ AND LOWER(Domain) = ‘rt::ticket-role’ AND LOWER(Type) = ‘requestor’
Feb 3 09:26:09 suppcard postgres[46361]: [119-1] LOG: duration: 13.192 ms
statement: SELECT
count(main.id) FROM GroupMembers main
Feb 3 09:26:09 suppcard postgres[46361]: [119-2] WHERE ((main.GroupId =
4827))
Feb 3 09:26:09 suppcard postgres[46361]: [120-1] LOG: duration: 12.419 ms
statement: SELECT main.* FROM
GroupMembers main WHERE
Feb 3 09:26:09 suppcard postgres[46361]: [120-2] ((main.GroupId = 4827))
Feb 3 09:26:09 suppcard postgres[46361]: [121-1] LOG: duration: 1.452 ms
statement: SELECT *
FROM Principals WHERE id =
Feb 3 09:26:09 suppcard postgres[46361]: [121-2] ‘4825’
Feb 3 09:26:09 suppcard postgres[46361]: [122-1] LOG: duration: 2.505 ms
statement: SELECT *
FROM Users WHERE id =
Feb 3 09:26:09 suppcard postgres[46361]: [122-2] ‘4825’
Feb 3 09:26:09 suppcard postgres[46361]: [123-1] LOG: duration: 18.180 ms
statement:
SELECT * FROM
Feb 3 09:26:09 suppcard postgres[46361]: [123-2] Groups WHERE Instance =
‘914’ AND LOWER(Domain) = ‘rt::ticket-role’ AND LOWER(Type) = ‘cc’
Feb 3 09:26:09 suppcard postgres[46361]: [124-1] LOG: duration: 12.669 ms
statement: SELECT
count(main.id) FROM GroupMembers main
Feb 3 09:26:09 suppcard postgres[46361]: [124-2] WHERE ((main.GroupId =
4829))
Feb 3 09:26:09 suppcard postgres[46361]: [125-1] LOG: duration: 12.428 ms
statement: SELECT main.* FROM
GroupMembers main WHERE
Feb 3 09:26:09 suppcard postgres[46361]: [125-2] ((main.GroupId = 4829))
Feb 3 09:26:09 suppcard postgres[46361]: [126-1] LOG: duration: 18.141 ms
statement:
SELECT * FROM
Feb 3 09:26:09 suppcard postgres[46361]: [126-2] Groups WHERE Instance =
‘914’ AND LOWER(Domain) = ‘rt::ticket-role’ AND LOWER(Type) = ‘admincc’
Feb 3 09:26:09 suppcard postgres[46361]: [127-1] LOG: duration: 13.644 ms
statement: SELECT
count(main.id) FROM GroupMembers main
Feb 3 09:26:09 suppcard postgres[46361]: [127-2] WHERE ((main.GroupId =
4830))
Feb 3 09:26:09 suppcard postgres[46361]: [128-1] LOG: duration: 12.455 ms
statement: SELECT main.* FROM
GroupMembers main WHERE
Feb 3 09:26:09 suppcard postgres[46361]: [128-2] ((main.GroupId = 4830))

Victoria

Having looked deeper into this, the problem results from an extra
efficiency we added just before the release of 3.4.0. It’s merely a
cosmetic issue and not evidence of a deep bug. Try out the attached
patch. If it works, that’ll be in 3.4.1.

Jesse

nobody.patch (1.2 KB)

Jesse,
Thank you.
We’ll try out this patch. I’ll write about results.

-----Original Message-----
From: Jesse Vincent [mailto:jesse@bestpractical.com]
Sent: Thursday, February 03, 2005 7:43 PM
To: Kalinitcheva Victoria
Cc: ‘Jesse Vincent’; ‘rt-users@lists.bestpractical.com’
Subject: Re: [rt-users] RT 3.4.0 – 2 Nobody

Having looked deeper into this, the problem results from an
extra efficiency we added just before the release of 3.4.0.
It’s merely a cosmetic issue and not evidence of a deep bug.
Try out the attached patch. If it works, that’ll be in 3.4.1.

Jesse

Victoria

Hi, I am trying to set up customers to access rt and create their own
tickets.

I cannot get them to see/open a ticket to a specfic queue. The drop down
list is blank when the ticket is being opened, and obviously the ticket
cannot be opened.

I have created a Queue, and I go to the ‘Group rights’ and give the
following rights to the 'Requestor’
to:

  1. see the queue
  2. Create a ticket
  3. Modify the ticket
  4. Delete the ticket
    etc
    Still nothing,

I then give the same rights to the Unpriviledged Users,
Still nothing…even if I give both of groups the rights at the same time?

Any help would be appreciated.

Best Regards,
Ravin

Hi, I am trying to set up customers to access rt and create their own
tickets.

I cannot get them to see/open a ticket to a specfic queue. The drop down
list is blank when the ticket is being opened, and obviously the ticket
cannot be opened.

I have created a Queue, and I go to the ‘Group rights’ and give the
following rights to the ‘Requestor’
to:

If you assign rights only to the Requestor, they will only apply if
the user is listed as the requestor for an existing ticket.

I then give the same rights to the Unpriviledged Users,
Still nothing…even if I give both of groups the rights at the same time?

Since you have set up the customers, they are no longer unprivileged.

http://wiki.bestpractical.com/index.cgi?Rights

Andy Harrison

Jesse,

This patch has solved my problem.

Thank you.

-----Original Message-----
From: Jesse Vincent [mailto:jesse@bestpractical.com]
Sent: Thursday, February 03, 2005 7:43 PM
To: Kalinitcheva Victoria
Cc: ‘Jesse Vincent’; ‘rt-users@lists.bestpractical.com’
Subject: Re: [rt-users] RT 3.4.0 – 2 Nobody

Having looked deeper into this, the problem results from an
extra efficiency we added just before the release of 3.4.0.
It’s merely a cosmetic issue and not evidence of a deep bug.
Try out the attached patch. If it works, that’ll be in 3.4.1.

Jesse

Victoria