Merged V3.3-BUG-FIX to HEAD

22123: Fixed NFS path to handle conversion not supporting folder paths. ALF-4462.
   22167: ALF-4557: Use batching on population of alf_locale table on upgrade from 2.x on MySQL
   22169: Merge V3.3-BUG-FIX-2010_07_13 to V3.3-BUG-FIX
      21554 : ALF-2339 - Can not handle the load if a lot of mails arriving a the same time.
   22173: Merge from V3.3-BUG-FIX_2010_06_24 to V3.3-BUG-FIX
      20976: ALF-2793 IMAP thunderbird takes ages to display the new contents of a folder.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@22214 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Dave Ward
2010-09-03 08:58:18 +00:00
parent b184b46d7d
commit 9d9fe8f1e1
6 changed files with 33 additions and 0 deletions

View File

@@ -696,11 +696,15 @@ INSERT INTO alf_locale (id, locale_str) VALUES (1, '.default');
-- Locales come from the attribute table which was used to support MLText persistence -- Locales come from the attribute table which was used to support MLText persistence
-- Query OK, 0 rows affected (17.22 sec) -- Query OK, 0 rows affected (17.22 sec)
--FOREACH alf_attributes.id system.upgrade.alf_attributes.batchsize
INSERT INTO alf_locale (locale_str) INSERT INTO alf_locale (locale_str)
SELECT DISTINCT(ma.mkey) SELECT DISTINCT(ma.mkey)
FROM alf_node_properties np FROM alf_node_properties np
JOIN alf_attributes a1 ON (np.attribute_value = a1.id) JOIN alf_attributes a1 ON (np.attribute_value = a1.id)
JOIN alf_map_attribute_entries ma ON (ma.map_id = a1.id) JOIN alf_map_attribute_entries ma ON (ma.map_id = a1.id)
LEFT OUTER JOIN alf_locale l ON (ma.mkey = l.locale_str)
WHERE l.locale_str IS NULL
AND a1.id >= ${LOWERBOUND} AND a1.id <= ${UPPERBOUND}
; ;
-- ------------------------------- -- -------------------------------

View File

@@ -411,11 +411,15 @@ CREATE TABLE alf_locale
INSERT INTO alf_locale (id, locale_str) VALUES (1, '.default'); INSERT INTO alf_locale (id, locale_str) VALUES (1, '.default');
-- Locales come from the attribute table which was used to support MLText persistence -- Locales come from the attribute table which was used to support MLText persistence
--FOREACH alf_attributes.id system.upgrade.alf_attributes.batchsize
INSERT INTO alf_locale (locale_str) INSERT INTO alf_locale (locale_str)
SELECT DISTINCT(ma.mkey) SELECT DISTINCT(ma.mkey)
FROM alf_node_properties np FROM alf_node_properties np
JOIN alf_attributes a1 ON (np.attribute_value = a1.id) JOIN alf_attributes a1 ON (np.attribute_value = a1.id)
JOIN alf_map_attribute_entries ma ON (ma.map_id = a1.id) JOIN alf_map_attribute_entries ma ON (ma.map_id = a1.id)
LEFT OUTER JOIN alf_locale l ON (ma.mkey = l.locale_str)
WHERE l.locale_str IS NULL
AND a1.id >= ${LOWERBOUND} AND a1.id <= ${UPPERBOUND}
; ;
-- ------------------------------- -- -------------------------------

View File

@@ -24,6 +24,9 @@
<property name="port"> <property name="port">
<value>${email.server.port}</value> <value>${email.server.port}</value>
</property> </property>
<property name="maxConnections">
<value>${email.server.connections.max}</value>
</property>
<property name="blockedSenders"> <property name="blockedSenders">
<value>${email.server.blocked.senders}</value> <value>${email.server.blocked.senders}</value>
</property> </property>

View File

@@ -8,6 +8,7 @@ email.inbound.enabled=true
email.server.enabled=false email.server.enabled=false
email.server.port=25 email.server.port=25
email.server.connections.max=3
email.server.domain=alfresco.com email.server.domain=alfresco.com
email.server.allowed.senders=.* email.server.allowed.senders=.*
email.server.blocked.senders= email.server.blocked.senders=

View File

@@ -44,6 +44,7 @@ public abstract class EmailServer extends AbstractLifecycleBean
private boolean enabled; private boolean enabled;
private String domain; private String domain;
private int port; private int port;
private int maxConnections;
private Set<String> blockedSenders; private Set<String> blockedSenders;
private Set<String> allowedSenders; private Set<String> allowedSenders;
@@ -58,6 +59,7 @@ public abstract class EmailServer extends AbstractLifecycleBean
this.enabled = false; this.enabled = false;
this.port = 25; this.port = 25;
this.domain = null; this.domain = null;
this.maxConnections = 3;
this.blockedSenders = new HashSet<String>(23); this.blockedSenders = new HashSet<String>(23);
this.allowedSenders = new HashSet<String>(23); this.allowedSenders = new HashSet<String>(23);
} }
@@ -93,6 +95,24 @@ public abstract class EmailServer extends AbstractLifecycleBean
this.port = port; this.port = port;
} }
/**
* Returns the maximum number of connection accepted by the server.
* @return the maximum number of connections
*/
protected int getMaxConnections()
{
return maxConnections;
}
/**
* Sets the maximum number of connection accepted by the server
* @param maxConnections
*/
public void setMaxConnections(int maxConnections)
{
this.maxConnections = maxConnections;
}
/** /**
* Set the blocked senders as a comma separated list. The entries will be trimmed of * Set the blocked senders as a comma separated list. The entries will be trimmed of
* all whitespace. * all whitespace.

View File

@@ -57,6 +57,7 @@ public class SubethaEmailServer extends EmailServer
serverImpl = new SMTPServer(new HandlerFactory()); serverImpl = new SMTPServer(new HandlerFactory());
serverImpl.setPort(getPort()); serverImpl.setPort(getPort());
serverImpl.setHostName(getDomain()); serverImpl.setHostName(getDomain());
serverImpl.setMaxConnections(getMaxConnections());
serverImpl.start(); serverImpl.start();
log.info("Email Server has started successfully"); log.info("Email Server has started successfully");
} }