Author: rdonkin
Date: Wed Nov 28 23:22:55 2007
New Revision: 599299
URL: http://svn.apache.org/viewvc?rev=599299&view=rev
Log:
Improve performance of queries.
Modified:
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/om/MailboxRow.java
Modified:
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/om/MailboxRow.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/om/MailboxRow.java?rev=599299&r1=599298&r2=599299&view=diff
==============================================================================
---
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/om/MailboxRow.java
(original)
+++
james/server/trunk/torque-mailboxmanager-function/src/main/java/org/apache/james/mailboxmanager/torque/om/MailboxRow.java
Wed Nov 28 23:22:55 2007
@@ -92,14 +92,10 @@
public int countMessages(Flags flags, boolean value)
throws TorqueException, DataSetException {
Criteria criteria = new Criteria();
- criteria.addSelectColumn(" COUNT(" + MessageRowPeer.UID + ") ");
- criteria.add(MessageRowPeer.MAILBOX_ID, getMailboxId());
- if (flags.getSystemFlags().length > 0) {
- criteria.add(MessageFlagsPeer.MAILBOX_ID, getMailboxId());
- criteria.addJoin(MessageRowPeer.UID, MessageFlagsPeer.UID);
- MessageFlagsPeer.addFlagsToCriteria(flags, value, criteria);
- }
- List result = MessageRowPeer.doSelectVillageRecords(criteria);
+ criteria.addSelectColumn(" COUNT(" + MessageFlagsPeer.UID + ") ");
+ criteria.add(MessageFlagsPeer.MAILBOX_ID, getMailboxId());
+ MessageFlagsPeer.addFlagsToCriteria(flags, value, criteria);
+ List result = MessageFlagsPeer.doSelectVillageRecords(criteria);
Record record = (Record) result.get(0);
int numberOfRecords = record.getValue(1).asInt();
return numberOfRecords;
@@ -108,7 +104,8 @@
public void resetRecent() throws TorqueException {
String sql = "UPDATE " + MessageFlagsPeer.TABLE_NAME + " set "
+ MessageFlagsPeer.RECENT + " = 0 WHERE " +
- MessageFlagsPeer.MAILBOX_ID + " = " + getMailboxId();
+ MessageFlagsPeer.MAILBOX_ID + " = " + getMailboxId() + " AND "
+ + MessageFlagsPeer.RECENT + " = 1 ";
MessageFlagsPeer.executeStatement(sql);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]