[EP-tech] Oracle error inserting into Event Queue

Robert Berry robert.berry at liverpool.ac.uk
Fri Aug 10 14:50:07 BST 2012


When using the Oracle layer on the latest version of EPrints there are
errors in various places when the system tries to insert into the Event
Queue table, e.g.

52ORA-01722: invalid number (DBD ERROR: error possibly near <*> indicator at ch
ar 52 in 'INSERT INTO "EVENT_QUEUE" ("EVENTQUEUEID") VALUES (:<*>p1)') at /epri
nts/eprints3/perl_lib/EPrints/Database.pm line 1386, <$fh> line 1. EPrints::Dat
abase::add_record('EPrints::Database::Oracle=HASH(0x22c31c80)', 'EPrints::DataS
et=HASH(0x253eb988)', 'HASH(0x2268ce68)') called at /eprints/eprints3/perl_lib/
EPrints/DataObj.pm line 294 EPrints::DataObj::create_from_data('EPrints::DataOb
j::EventQueue', 'EPrints::Repository=HASH(0x2408e740)', 'HASH(0x227dae48)', 'EP
rints::DataSet=HASH(0x253eb988)') called at /eprints/eprints3/perl_lib/EPrints/
DataObj/EventQueue.pm line 109 EPrints::DataObj::EventQueue::create_unique('EPr
ints::DataObj::EventQueue', 'EPrints::Repository=HASH(0x2408e740)', 'HASH(0x227
dae48)') called at /eprints/eprints3/perl_lib/EPrints/DataObj.pm line 1849 EPri
called  ...

You can see these when either re-importing the subjects table or using
an import plug in, for example.

I checked to see what was being bound to the :p1 variable (and therefore
inserted into "EVENTQUEUEID", which is a Number field), and it was in
this particular case 'b6fbe2aed4c155ede151f8ad836bc6', which Oracle
cannot convert to a Number.

Does anyone know why EPrints is attempting to insert this data? 

Best wishes,

More information about the Eprints-tech mailing list