Ticket random creation error

Hi,

My client have a strange problem on his 3.6.4 RT using Oracle 11g (on a
separate server). Tickets fail to create randomly. It is not related to a
specific queue, e-mail address or e-mail format. Not related to a specific
user as well.

The following errors show in rt.log:

May 18 10:20:38 rt RT: Couldn’t create a ticket: Object could not be created
(/opt/rt3/lib/RT/Ticket_Overlay.pm:602)
May 18 10:20:38 rt RT: Ticket could not be created due to an internal error
(/opt/rt3/lib/RT/Interface/Email.pm:243)
May 18 10:20:38 rt RT: Could not record email: Ticket creation failed:
Ticket could not be created due to an internal error
(/opt/rt3/share/html/REST/1.0/NoAuth/mail-gateway:75)

The following shows in the Apache error log:

[Mon May 16 13:24:53 2011] [error] [client 127.0.0.1] FastCGI: server
"/opt/rt3/bin/mason_handler.fcgi" stderr: DBD::Oracle::st execute failed:
ORA-01400: cannot insert NULL into (“RT”.“TICKETS”.“OWNER”) (DBD ERROR:
error possibly near <> indicator at char 225 in 'INSERT INTO Tickets
(Status, Queue, Type, Started, Starts, id, LastUpdated, Subject,
FinalPriority, Creator, Owner, LastUpdatedBy, Resolved, Created, Priority,
Due)
VALUES (:p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8, :p9, :p10, :<
>p11, :p12,
:p13, :p14, :p15, :p16)’)
[for Statement “INSERT INTO Tickets (Status, Queue, Type, Started, Starts,
id, LastUpdated, Subject, FinalPriority, Creator, Owner, LastUpdatedBy,
Resolved, Created, Priority, Due) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?)” with ParamValues: :p5=‘1970-01-01 00:00:00’, :p12=‘247803’,
:p8=‘FW: Testing tomorrow’, :p14=‘2011-05-16 17:24:53’, :p10=‘247803’,
:p13=‘1970-01-01 00:00:00’, :p16=‘1970-01-01 00:00:00’, :p2=‘21’,
:p3=‘ticket’,
:p6=‘93947’, :p15=0, :p1=‘new’, :p7=‘2011-05-16 17:24:53’, :p4=‘1970-01-01
00:00:00’, :p9=‘10’, :p11=undef] at
/usr/lib/perl5/site_perl/5.8.5/DBIx/SearchBu

Note the " ORA-01400: cannot insert NULL into (“RT”.“TICKETS”.“OWNER”)"
error.

We found that RT seems to have problems getting the Nobody user ID from time
to time. Using Wireshark to look at the communications between RT and
Oracle, we see that sometimes the Nobody user ID is returned, sometimes not
(most information are returned, except the user ID).

We can also see that the query for that user ID is not always done, which
makes me think there is some kind of caching.

We were unable to find much more information regarding this problem. It
seems to have gone away after a reboot… But for how long?

I’d like to know if someone have seen that problem before? If so, did you
find a solution, what was the problem?

I’d like to have information about how RT works internally regarding getting
the Nobody user ID and if there is some kind of caching. If so, for how
long? Where?

We appreciate all the help.

Thanks!

J-P

My client have a strange problem on his 3.6.4 RT using Oracle 11g (on a
separate server). Tickets fail to create randomly. It is not related to a
specific queue, e-mail address or e-mail format. Not related to a specific
user as well.

[snip]

I’d like to have information about how RT works internally regarding getting
the Nobody user ID and if there is some kind of caching. If so, for how
long? Where?

There is certainly caching going on, but 3.6.4 is so old I’d have to go
digging in the code to look at exactly what it’s doing. I suspect
upgrading to a recent version would fix the problem. If it didn’t, then
we could at least fix the bug once replicated in the latest version.

Thomas