[Erp5-report] r25266 - in /erp5/trunk/products/CMFActivity: Activity/ skins/activity/ tests/
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Jan 22 14:17:43 CET 2009
Author: vincent
Date: Thu Jan 22 14:17:39 2009
New Revision: 25266
URL: http://svn.erp5.org?rev=25266&view=rev
Log:
Make all ZSQLMethod parameters mandatory.
Make all dtml tests use expr="...", so that tested values don't use acquisition. (Nice catch, Nicolas !)
Update callers to cope with those new limitations.
Modified:
erp5/trunk/products/CMFActivity/Activity/SQLDict.py
erp5/trunk/products/CMFActivity/Activity/SQLQueue.py
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_hasMessage.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readUidList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_reserveMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_selectReservedMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_setPriority.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_timeShift.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_validateMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLDict_writeMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_hasMessage.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_readMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_reserveMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_selectReservedMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_setPriority.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_validateMessageList.zsql
erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_writeMessageList.zsql
erp5/trunk/products/CMFActivity/tests/testCMFActivity.py
Modified: erp5/trunk/products/CMFActivity/Activity/SQLDict.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/Activity/SQLDict.py?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/Activity/SQLDict.py [utf8] (original)
+++ erp5/trunk/products/CMFActivity/Activity/SQLDict.py [utf8] Thu Jan 22 14:17:39 2009
@@ -91,6 +91,7 @@
group_method_id_list = group_method_id_list,
tag_list = tag_list,
serialization_tag_list = serialization_tag_list,
+ processing_node_list=None,
order_validation_text_list = order_validation_text_list)
def prepareDeleteMessage(self, activity_tool, m):
@@ -98,8 +99,7 @@
path = '/'.join(m.object_path)
order_validation_text = self.getOrderValidationText(m)
uid_list = activity_tool.SQLDict_readUidList(path = path, method_id = m.method_id,
- order_validation_text = order_validation_text,
- processing_node = None)
+ order_validation_text = order_validation_text)
uid_list = [x.uid for x in uid_list]
if len(uid_list)>0:
activity_tool.SQLDict_delMessage(uid = uid_list)
@@ -149,7 +149,7 @@
return 0
return 1
- def getReservedMessageList(self, activity_tool, date, processing_node, limit=None, **kw):
+ def getReservedMessageList(self, activity_tool, date, processing_node, limit=None, group_method_id=None):
"""
Get and reserve a list of messages.
limit
@@ -163,7 +163,7 @@
"""
result = activity_tool.SQLDict_selectReservedMessageList(processing_node=processing_node, count=limit)
if len(result) == 0:
- activity_tool.SQLDict_reserveMessageList(count=limit, processing_node=processing_node, to_date=date, **kw)
+ activity_tool.SQLDict_reserveMessageList(count=limit, processing_node=processing_node, to_date=date, group_method_id=group_method_id)
result = activity_tool.SQLDict_selectReservedMessageList(processing_node=processing_node, count=limit)
return result
@@ -237,11 +237,12 @@
- group_method_id
- uid_to_duplicate_uid_list_dict
"""
- def getReservedMessageList(**kw):
+ def getReservedMessageList(limit, group_method_id=None):
line_list = self.getReservedMessageList(activity_tool=activity_tool,
date=now_date,
processing_node=processing_node,
- **kw)
+ limit=limit,
+ group_method_id=group_method_id)
if len(line_list):
LOG('SQLDict', TRACE, 'Reserved messages: %r' % ([x.uid for x in line_list]))
return line_list
@@ -366,6 +367,8 @@
# Immediately update, because values different for every message
activity_tool.SQLDict_setPriority(
uid=[uid],
+ delay=None,
+ rety=None,
priority=priority + 1)
except:
LOG('SQLDict', WARNING, 'Failed to increase priority of %r' % (uid, ), error=sys.exc_info())
@@ -385,7 +388,7 @@
if len(delay_uid_list):
try:
# If this is a conflict error, do not lower the priority but only delay.
- activity_tool.SQLDict_setPriority(uid=delay_uid_list, delay=VALIDATION_ERROR_DELAY)
+ activity_tool.SQLDict_setPriority(uid=delay_uid_list, delay=VALIDATION_ERROR_DELAY, priority=None, retry=None)
except:
LOG('SQLDict', ERROR, 'Failed to delay %r' % (delay_uid_list, ), error=sys.exc_info())
make_available_uid_list += delay_uid_list
@@ -506,12 +509,12 @@
get_transaction().commit()
return not len(message_uid_priority_list)
- def hasActivity(self, activity_tool, object, **kw):
+ def hasActivity(self, activity_tool, object, method_id=None, only_valid=None):
hasMessage = getattr(activity_tool, 'SQLDict_hasMessage', None)
if hasMessage is not None:
if object is not None:
my_object_path = '/'.join(object.getPhysicalPath())
- result = hasMessage(path=my_object_path, **kw)
+ result = hasMessage(path=my_object_path, method_id=method_id, only_valid=only_valid)
if len(result) > 0:
return result[0].message_count > 0
else:
@@ -560,7 +563,7 @@
activity_tool.unregisterMessage(self, m)
# Parse each message in SQL dict
result = readMessageList(path=path, method_id=method_id,
- processing_node=None,include_processing=0)
+ processing_node=None,include_processing=0, to_date=None)
for line in result:
path = line.path
line_method_id = line.method_id
@@ -593,7 +596,7 @@
if len(result):
uid_list = activity_tool.SQLDict_readUidList(path = path, method_id = method_id,
- processing_node = None,)
+ order_validation_text=None)
if len(uid_list)>0:
activity_tool.SQLDict_delMessage(uid = [x.uid for x in uid_list])
@@ -669,6 +672,7 @@
message_uid=message_uid,
path=path,
tag=tag,
+ count=False,
serialization_tag=serialization_tag)
message_list = []
for line in result:
@@ -726,6 +730,7 @@
path=path,
message_uid=message_uid,
tag=tag,
+ serialization_tag=None,
count=1)
return result[0].uid_count
Modified: erp5/trunk/products/CMFActivity/Activity/SQLQueue.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/Activity/SQLQueue.py?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/Activity/SQLQueue.py [utf8] (original)
+++ erp5/trunk/products/CMFActivity/Activity/SQLQueue.py [utf8] Thu Jan 22 14:17:39 2009
@@ -83,6 +83,7 @@
message_list=message_list,
date_list=date_list,
tag_list=tag_list,
+ processing_node_list=None,
serialization_tag_list=serialization_tag_list)
def prepareDeleteMessage(self, activity_tool, m):
@@ -241,7 +242,7 @@
if len(delay_uid_list):
try:
# If this is a conflict error, do not lower the priority but only delay.
- activity_tool.SQLQueue_setPriority(uid=delay_uid_list, delay=VALIDATION_ERROR_DELAY)
+ activity_tool.SQLQueue_setPriority(uid=delay_uid_list, delay=VALIDATION_ERROR_DELAY, priority=None)
except:
LOG('SQLQueue', ERROR, 'Failed to delay %r' % (delay_uid_list, ), error=sys.exc_info())
try:
@@ -345,12 +346,12 @@
return not len(message_uid_priority_list)
- def hasActivity(self, activity_tool, object, **kw):
+ def hasActivity(self, activity_tool, object, method_id=None, only_valid=None):
hasMessage = getattr(activity_tool, 'SQLQueue_hasMessage', None)
if hasMessage is not None:
if object is not None:
my_object_path = '/'.join(object.getPhysicalPath())
- result = hasMessage(path=my_object_path, **kw)
+ result = hasMessage(path=my_object_path, method_id=method_id, only_valid=only_valid)
if len(result) > 0:
return result[0].message_count > 0
else:
@@ -394,7 +395,7 @@
'Could not validate %s on %s' % (m.method_id , path))
activity_tool.unregisterMessage(self, m)
# Parse each message in SQL queue
- result = readMessageList(path=path, method_id=method_id, processing_node=None)
+ result = readMessageList(path=path, method_id=method_id, processing_node=None, to_date=None, include_processing=0)
for line in result:
path = line.path
method_id = line.method_id
@@ -426,7 +427,7 @@
message_list = []
readMessageList = getattr(activity_tool, 'SQLQueue_readMessageList', None)
if readMessageList is not None:
- result = readMessageList(path=None, method_id=None, processing_node=None)
+ result = readMessageList(path=None, method_id=None, processing_node=None, to_date=None, include_processing=0)
for line in result:
m = self.loadMessage(line.message)
m.processing_node = line.processing_node
@@ -448,6 +449,7 @@
path=path,
message_uid=message_uid,
tag=tag,
+ serialization_tag=None,
count=1)
return result[0].uid_count
@@ -515,6 +517,7 @@
message_uid=message_uid,
path=path,
tag=tag,
+ count=False,
serialization_tag=serialization_tag)
message_list = []
for line in result:
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_hasMessage.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_hasMessage.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_hasMessage.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_hasMessage.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -13,8 +13,7 @@
SELECT count(path) as message_count FROM
message
WHERE
-1 = 1
-<dtml-if path> AND path = <dtml-sqlvar path type="string"></dtml-if>
-<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if>
-<dtml-if only_valid>AND processing_node > -2</dtml-if>
+path = <dtml-sqlvar path type="string">
+<dtml-if expr="method_id is not None">AND method_id = <dtml-sqlvar method_id type="string"></dtml-if>
+<dtml-if expr="only_valid">AND processing_node > -2</dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -21,9 +21,9 @@
1 = 1
<dtml-if expr="not(include_processing)"> AND processing = 0 </dtml-if>
<dtml-if expr="processing_node is not None"> AND processing_node = <dtml-sqlvar processing_node type="int"> </dtml-if>
-<dtml-if path>AND path = <dtml-sqlvar path type="string"> </dtml-if>
-<dtml-if method_id> AND method_id = <dtml-sqlvar method_id type="string"> </dtml-if>
-<dtml-if to_date> AND date <= <dtml-sqlvar to_date type="datetime"> </dtml-if>
+<dtml-if expr="path is not None"> AND path = <dtml-sqlvar path type="string"> </dtml-if>
+<dtml-if expr="method_id is not None"> AND method_id = <dtml-sqlvar method_id type="string"> </dtml-if>
+<dtml-if expr="to_date is not None"> AND date <= <dtml-sqlvar to_date type="datetime"> </dtml-if>
ORDER BY
priority, date, uid
LIMIT <dtml-sqlvar offset type="int">, <dtml-sqlvar count type="int">
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readUidList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readUidList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readUidList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_readUidList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -16,6 +16,6 @@
message
WHERE
processing = 0
-<dtml-if method_id> AND method_id = <dtml-sqlvar method_id type="string"> </dtml-if>
-<dtml-if path> AND path = <dtml-sqlvar path type="string"> </dtml-if>
-<dtml-if order_validation_text> AND order_validation_text = <dtml-sqlvar order_validation_text type="string"> </dtml-if>
+<dtml-if expr="method_id is not None"> AND method_id = <dtml-sqlvar method_id type="string"> </dtml-if>
+<dtml-if expr="path is not None"> AND path = <dtml-sqlvar path type="string"> </dtml-if>
+<dtml-if expr="order_validation_text is not None"> AND order_validation_text = <dtml-sqlvar order_validation_text type="string"> </dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_reserveMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_reserveMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_reserveMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_reserveMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -19,11 +19,9 @@
WHERE
processing_node=0
AND date <= <dtml-sqlvar to_date type="datetime">
- <dtml-if group_method_id> AND group_method_id = <dtml-sqlvar group_method_id type="string"> </dtml-if>
+ <dtml-if expr="group_method_id is not None"> AND group_method_id = <dtml-sqlvar group_method_id type="string"> </dtml-if>
ORDER BY
priority, date, uid
-<dtml-if count>
- LIMIT <dtml-sqlvar count type="int">
-</dtml-if>
+LIMIT <dtml-sqlvar count type="int">
<dtml-var sql_delimiter>
COMMIT
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_selectReservedMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_selectReservedMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_selectReservedMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_selectReservedMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -16,6 +16,6 @@
WHERE
processing_node = <dtml-sqlvar processing_node type="int">
AND processing = 0
-<dtml-if count>
+<dtml-if expr="count is not None">
LIMIT <dtml-sqlvar count type="int">
</dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_setPriority.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_setPriority.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_setPriority.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_setPriority.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -16,13 +16,13 @@
message
SET
processing = 0
-<dtml-if priority>
+<dtml-if expr="priority is not None">
, priority = <dtml-sqlvar priority type="int">
</dtml-if>
-<dtml-if delay>
+<dtml-if expr="delay is not None">
, date = DATE_ADD(UTC_TIMESTAMP(), INTERVAL <dtml-sqlvar delay type="int"> * (retry + 1) SECOND)
</dtml-if>
-<dtml-if retry>
+<dtml-if expr="retry is not None">
, retry = retry + <dtml-sqlvar retry type="int">
</dtml-if>
WHERE
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_timeShift.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_timeShift.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_timeShift.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_timeShift.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -15,7 +15,7 @@
SET
date = DATE_SUB(date, INTERVAL <dtml-sqlvar delay type="int"> SECOND),
processing_date = DATE_SUB(processing_date, INTERVAL <dtml-sqlvar delay type="int"> SECOND)
-<dtml-if retry>
+<dtml-if expr="retry is not None">
,retry = GREATEST(retry,<dtml-sqlvar retry type="int">) - <dtml-sqlvar retry type="int">
</dtml-if>
WHERE
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_validateMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_validateMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_validateMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_validateMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -15,7 +15,7 @@
serialization_tag
</params>
SELECT
-<dtml-if count>
+<dtml-if expr="count">
COUNT(*) AS uid_count
<dtml-else>
*
@@ -24,23 +24,23 @@
message
WHERE
processing_node >= -2
-<dtml-if method_id>
+<dtml-if expr="method_id is not None">
AND method_id IN (
<dtml-in method_id><dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else>,</dtml-if></dtml-in>
)
</dtml-if>
-<dtml-if message_uid>AND uid = <dtml-sqlvar message_uid type="int"> </dtml-if>
-<dtml-if path>
+<dtml-if expr="message_uid is not None">AND uid = <dtml-sqlvar message_uid type="int"> </dtml-if>
+<dtml-if expr="path is not None">
AND path IN (
<dtml-in path><dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else>,</dtml-if></dtml-in>
)
</dtml-if>
-<dtml-if tag>
+<dtml-if expr="tag is not None">
AND tag IN (
<dtml-in tag><dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else>,</dtml-if></dtml-in>
)
</dtml-if>
-<dtml-if serialization_tag>
+<dtml-if expr="serialization_tag is not None">
AND processing_node > -1
AND serialization_tag = <dtml-sqlvar serialization_tag type="string">
</dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLDict_writeMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLDict_writeMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLDict_writeMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLDict_writeMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -26,9 +26,9 @@
(
<dtml-sqlvar expr="uid_list[loop_item]" type="int">,
<dtml-sqlvar expr="path_list[loop_item]" type="string">,
- <dtml-if date_list><dtml-if expr="date_list[loop_item] is not None"><dtml-sqlvar expr="date_list[loop_item]" type="datetime"><dtml-else>UTC_TIMESTAMP()</dtml-if><dtml-else>UTC_TIMESTAMP()</dtml-if>,
+ <dtml-if expr="date_list is not None"><dtml-if expr="date_list[loop_item] is not None"><dtml-sqlvar expr="date_list[loop_item]" type="datetime"><dtml-else>UTC_TIMESTAMP()</dtml-if><dtml-else>UTC_TIMESTAMP()</dtml-if>,
<dtml-sqlvar expr="method_id_list[loop_item]" type="string">,
- <dtml-if processing_node_list><dtml-sqlvar expr="processing_node_list[loop_item]" type="int"><dtml-else>-1</dtml-if>,
+ <dtml-if expr="processing_node_list is not None"><dtml-sqlvar expr="processing_node_list[loop_item]" type="int"><dtml-else>-1</dtml-if>,
0,
<dtml-sqlvar expr="priority_list[loop_item]" type="int">,
<dtml-sqlvar expr="group_method_id_list[loop_item]" type="string">,
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_hasMessage.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_hasMessage.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_hasMessage.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_hasMessage.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -13,8 +13,7 @@
SELECT count(path) as message_count FROM
message_queue
WHERE
-1 = 1
-<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if>
-<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if>
-<dtml-if only_valid>AND processing_node > -2</dtml-if>
+path = <dtml-sqlvar path type="string">
+<dtml-if expr="method_id is not None">AND method_id = <dtml-sqlvar method_id type="string"></dtml-if>
+<dtml-if expr="only_valid">AND processing_node > -2</dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_readMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_readMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_readMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_readMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -21,9 +21,9 @@
1 = 1
<dtml-if expr="not(include_processing)"> AND processing = 0 </dtml-if>
<dtml-if expr="processing_node is not None"> AND processing_node = <dtml-sqlvar processing_node type="int"> </dtml-if>
-<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if>
-<dtml-if method_id>AND method_id = <dtml-sqlvar method_id type="string"></dtml-if>
-<dtml-if to_date> AND date <= <dtml-sqlvar to_date type="datetime"> </dtml-if>
+<dtml-if expr="path is not None">AND path = <dtml-sqlvar path type="string"></dtml-if>
+<dtml-if expr="method_id is not None">AND method_id = <dtml-sqlvar method_id type="string"></dtml-if>
+<dtml-if expr="to_date is not None"> AND date <= <dtml-sqlvar to_date type="datetime"> </dtml-if>
ORDER BY
priority, date, uid
LIMIT <dtml-sqlvar offset type="int">, <dtml-sqlvar count type="int">
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_reserveMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_reserveMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_reserveMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_reserveMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -20,8 +20,6 @@
AND date <= <dtml-sqlvar to_date type="datetime">
ORDER BY
priority, date, uid
-<dtml-if count>
- LIMIT <dtml-sqlvar count type="int">
-</dtml-if>
+LIMIT <dtml-sqlvar count type="int">
<dtml-var sql_delimiter>
COMMIT
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_selectReservedMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_selectReservedMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_selectReservedMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_selectReservedMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -16,6 +16,6 @@
WHERE
processing_node = <dtml-sqlvar processing_node type="int">
AND processing = 0
-<dtml-if count>
+<dtml-if expr="count is not None">
LIMIT <dtml-sqlvar count type="int">
</dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_setPriority.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_setPriority.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_setPriority.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_setPriority.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -15,10 +15,10 @@
message_queue
SET
processing = 0
- <dtml-if priority>
+ <dtml-if expr="priority is not None">
, priority = <dtml-sqlvar priority type="int">
</dtml-if>
- <dtml-if delay>
+ <dtml-if expr="delay is not None">
, date = DATE_ADD(UTC_TIMESTAMP(), INTERVAL <dtml-sqlvar delay type="int"> SECOND)
</dtml-if>
WHERE
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_validateMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_validateMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_validateMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_validateMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -15,7 +15,7 @@
serialization_tag
</params>
SELECT
-<dtml-if count>
+<dtml-if expr="count">
COUNT(*) AS uid_count
<dtml-else>
*
@@ -24,23 +24,23 @@
message_queue
WHERE
processing_node >= -2
-<dtml-if method_id>
+<dtml-if expr="method_id is not None">
AND method_id IN (
<dtml-in method_id><dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else>,</dtml-if></dtml-in>
)
</dtml-if>
-<dtml-if message_uid>AND uid = <dtml-sqlvar message_uid type="int"> </dtml-if>
-<dtml-if path>
+<dtml-if expr="message_uid is not None">AND uid = <dtml-sqlvar message_uid type="int"> </dtml-if>
+<dtml-if expr="path is not None">
AND path IN (
<dtml-in path><dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else>,</dtml-if></dtml-in>
)
</dtml-if>
-<dtml-if tag>
+<dtml-if expr="tag is not None">
AND tag IN (
<dtml-in tag><dtml-sqlvar sequence-item type="string"><dtml-if sequence-end><dtml-else>,</dtml-if></dtml-in>
)
</dtml-if>
-<dtml-if serialization_tag>
+<dtml-if expr="serialization_tag is not None">
AND processing_node > -1
AND serialization_tag = <dtml-sqlvar serialization_tag type="string">
</dtml-if>
Modified: erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_writeMessageList.zsql
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_writeMessageList.zsql?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_writeMessageList.zsql [utf8] (original)
+++ erp5/trunk/products/CMFActivity/skins/activity/SQLQueue_writeMessageList.zsql [utf8] Thu Jan 22 14:17:39 2009
@@ -25,9 +25,9 @@
(
<dtml-sqlvar expr="uid_list[loop_item]" type="int">,
<dtml-sqlvar expr="path_list[loop_item]" type="string">,
- <dtml-if date_list><dtml-if expr="date_list[loop_item] is not None"><dtml-sqlvar expr="date_list[loop_item]" type="datetime"><dtml-else>UTC_TIMESTAMP()</dtml-if><dtml-else>UTC_TIMESTAMP()</dtml-if>,
+ <dtml-if expr="date_list is not None"><dtml-if expr="date_list[loop_item] is not None"><dtml-sqlvar expr="date_list[loop_item]" type="datetime"><dtml-else>UTC_TIMESTAMP()</dtml-if><dtml-else>UTC_TIMESTAMP()</dtml-if>,
<dtml-sqlvar expr="method_id_list[loop_item]" type="string">,
- <dtml-if processing_node_list><dtml-sqlvar expr="processing_node_list[loop_item]" type="int"><dtml-else>-1</dtml-if>,
+ <dtml-if expr="processing_node_list is not None"><dtml-sqlvar expr="processing_node_list[loop_item]" type="int"><dtml-else>-1</dtml-if>,
0,
<dtml-sqlvar expr="priority_list[loop_item]" type="int">,
<dtml-sqlvar expr="tag_list[loop_item]" type="string">,
Modified: erp5/trunk/products/CMFActivity/tests/testCMFActivity.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/tests/testCMFActivity.py?rev=25266&r1=25265&r2=25266&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/tests/testCMFActivity.py [utf8] (original)
+++ erp5/trunk/products/CMFActivity/tests/testCMFActivity.py [utf8] Thu Jan 22 14:17:39 2009
@@ -1955,7 +1955,8 @@
processing_node_list=[-2],
group_method_id_list=[''],
tag_list=[''],
- order_validation_text_list=['']
+ order_validation_text_list=[''],
+ serialization_tag_list=[''],
)
if len(object_list) == 2:
# Remove one entry from object list: this is understood by caller as a
@@ -2011,7 +2012,8 @@
processing_node_list=[-2],
group_method_id_list=[''],
tag_list=[''],
- order_validation_text_list=['']
+ order_validation_text_list=[''],
+ serialization_tag_list=['']
)
# Fail
raise ValueError, 'This method always fail'
@@ -2077,7 +2079,8 @@
processing_node_list=[-2],
group_method_id_list=[''],
tag_list=[''],
- order_validation_text_list=['']
+ order_validation_text_list=[''],
+ serialization_tag_list=[''],
)
# Fail
raise ValueError, 'This method always fail'
@@ -2134,7 +2137,8 @@
processing_node_list=[-2],
group_method_id_list=[''],
tag_list=[''],
- order_validation_text_list=['']
+ order_validation_text_list=[''],
+ serialization_tag_list=[''],
)
# Fail
raise ValueError, 'This method always fail'
@@ -2300,10 +2304,14 @@
obj.activate(activity=activity, priority=6).failingMethod()
get_transaction().commit()
self.flushAllActivities(silent=1, loop_size=100)
- with_processing_len = len(readMessageList(method_id='failingMethod',
+ with_processing_len = len(readMessageList(path=None,
+ to_date=None,
+ method_id='failingMethod',
include_processing=1,
processing_node=None))
- without_processing_len = len(readMessageList(method_id='failingMethod',
+ without_processing_len = len(readMessageList(path=None,
+ to_date=None,
+ method_id='failingMethod',
include_processing=0,
processing_node=None))
self.assertEqual(with_processing_len, 1)
@@ -2366,7 +2374,7 @@
processing_node_list=[-2],
group_method_id_list=[''],
tag_list=[''],
- order_validation_text_list=['']
+ order_validation_text_list=[''],
)
get_transaction().__class__.commit = fake_commit
object_list[:] = []
@@ -2424,7 +2432,7 @@
processing_node_list=[-2],
group_method_id_list=[''],
tag_list=[''],
- order_validation_text_list=['']
+ order_validation_text_list=[''],
)
get_transaction().__class__.commit = fake_commit
commit = get_transaction().__class__.commit
@@ -2852,10 +2860,12 @@
self.assertEqual(len(activity_tool.getMessageList()), 1)
activity_tool.distribute()
self.assertEquals(len(readMessageList(processing_node=-3,
- include_processing=1)), 0)
+ include_processing=1, path=None, method_id=None,
+ to_date=None)), 0)
activity_tool.tic()
self.assertEquals(len(readMessageList(processing_node=-3,
- include_processing=1)), 1)
+ include_processing=1, path=None, method_id=None,
+ to_date=None)), 1)
def test_109_checkMissingActivityContextObjectSQLDict(self, quiet=0,
run=run_all_test):
@@ -2908,10 +2918,12 @@
self.assertEqual(len(activity_tool.getMessageList()), 2)
activity_tool.distribute()
self.assertEquals(len(readMessageList(processing_node=-3,
- include_processing=1)), 0)
+ include_processing=1, path=None, method_id=None,
+ to_date=None)), 0)
activity_tool.tic()
self.assertEquals(len(readMessageList(processing_node=-3,
- include_processing=1)), 1)
+ include_processing=1, path=None, method_id=None,
+ to_date=None)), 1)
# The message excuted on "organisation_2" must have succeeded.
self.assertEqual(len(activity_tool.getMessageList()), 1)
@@ -3128,8 +3140,8 @@
# Use SQLDict with no group method so that both activities won't be
# executed in the same batch, letting activity tool a chance to check
# if execution should stop processing activities.
- organisation.activate(activity='SQLDict', priority=1).waitingActivity()
- organisation.activate(activity='SQLDict', priority=2).getTitle()
+ organisation.activate(activity='SQLDict', tag='foo').waitingActivity()
+ organisation.activate(activity='SQLDict', after_tag='foo').getTitle()
get_transaction().commit()
self.assertEqual(len(activity_tool.getMessageList()), 2)
activity_tool.distribute()
More information about the Erp5-report
mailing list