Ticket #3564 (closed defect: invalid)

Opened 4 years ago

Last modified 3 years ago

Screen plugin EPrint::Messages inefficient?

Reported by: tmb Owned by:
Priority: Customer Report Milestone: EPrints 3.2.2
Component: - Version:
Severity: normal Keywords:
Cc:

Description (last modified by tmb) (diff)

Effectively executes the following query everytime an EPrint::View screen is displayed:

SELECT DISTINCT T0.historyid FROM history T0 WHERE (T0.datasetid = 'eprint');

Although the query executes fairly quickly, for very large history datasets it can take a few seconds to read in the list of IDs returned and then merge them with the accumulated list of IDs..

EPrint::Messages::can_be_viewed calls get_messages which searches the history dataset.

Change History

Changed 4 years ago by tmb

Note - is a distinct needed here - historyid should always be unique?

Changed 4 years ago by tmb

Workaround:

Disable plugin altogether or remove the datasetid="eprint" condition from the search in EPrint::Messages::get_messages (and assume that mail_owner and note actions won't be carried out on other types of dataobj..)

Changed 4 years ago by tmb

Chris - does the reworked 3.2 search code still run 1+ queries per search condition and then merge the lists of IDs returned?

Changed 4 years ago by tmb

  • description modified (diff)

Changed 4 years ago by tdb01r

This is no longer applicable to 3.2.

Changed 3 years ago by tdb01r

  • status changed from new to closed
  • resolution set to invalid
Note: See TracTickets for help on using tickets.