diff --git a/product/CMFActivity/skins/activity/SQLQueue_createMessageTable.zsql b/product/CMFActivity/skins/activity/SQLQueue_createMessageTable.zsql index e37869d3d14df4bbcec155c180a8b32b4150056d..5d48b442839bda6344cd4470db1c279587c1c55a 100755 --- a/product/CMFActivity/skins/activity/SQLQueue_createMessageTable.zsql +++ b/product/CMFActivity/skins/activity/SQLQueue_createMessageTable.zsql @@ -10,16 +10,20 @@ class_file: <params></params> CREATE TABLE `message_queue` ( `uid` int(11) NOT NULL auto_increment, + `date` datetime, `path` VARCHAR(255), `method_id` VARCHAR(40), `processing_node` INT DEFAULT -1, `processing` INT DEFAULT 0, + `processing_date` datetime, `priority` INT DEFAULT 0, `message` BLOB, PRIMARY KEY (`uid`), + KEY `date` (`date`), KEY `path` (`path`), KEY `method_id` (`method_id`), KEY `processing_node` (`processing_node`), KEY `processing` (`processing`), + KEY `processing_date` (`processing_date`), KEY `priority` (`priority`) ) TYPE = InnoDB; diff --git a/product/CMFActivity/skins/activity/SQLQueue_processMessage.zsql b/product/CMFActivity/skins/activity/SQLQueue_processMessage.zsql index 6193f0f35bddb7b22b705a772ed3a6d620a67036..acd670353bd2a763464e1c5143049f2868ad05fb 100755 --- a/product/CMFActivity/skins/activity/SQLQueue_processMessage.zsql +++ b/product/CMFActivity/skins/activity/SQLQueue_processMessage.zsql @@ -11,6 +11,7 @@ class_file: UPDATE message_queue SET + processing_date = <dtml-sqlvar "_.DateTime()" type="string">, processing=1 WHERE uid = <dtml-sqlvar uid type="int"> diff --git a/product/CMFActivity/skins/activity/SQLQueue_readMessage.zsql b/product/CMFActivity/skins/activity/SQLQueue_readMessage.zsql index 02bf3024a52d3458cce5c9615100cc87960e99ce..49a7aa676f471d713f083795d778c630c717db61 100755 --- a/product/CMFActivity/skins/activity/SQLQueue_readMessage.zsql +++ b/product/CMFActivity/skins/activity/SQLQueue_readMessage.zsql @@ -8,10 +8,15 @@ class_name: class_file: </dtml-comment> <params>processing_node -priority</params> +priority +to_date</params> SELECT * FROM message_queue WHERE processing <> 1 <dtml-if processing_node> AND processing_node = <dtml-sqlvar processing_node type="int"></dtml-if> <dtml-if priority> AND priority = <dtml-sqlvar priority type="int"> </dtml-if> +<dtml-if to_date> AND date <= <dtml-sqlvar to_date type="string"> </dtml-if> + +ORDER BY + priority, date diff --git a/product/CMFActivity/skins/activity/SQLQueue_readUidList.zsql b/product/CMFActivity/skins/activity/SQLQueue_readUidList.zsql index 99717a84bb5066d3d6924c7bd390fa74787fd5d8..910d402b096b631b536427784442a0138224ffb6 100755 --- a/product/CMFActivity/skins/activity/SQLQueue_readUidList.zsql +++ b/product/CMFActivity/skins/activity/SQLQueue_readUidList.zsql @@ -9,10 +9,12 @@ class_file: </dtml-comment> <params>processing_node method_id -path</params> +path +to_date</params> SELECT uid FROM message_queue WHERE processing <> 1 <dtml-if processing_node> AND processing_node = <dtml-sqlvar processing_node type="int"></dtml-if> -<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if> \ No newline at end of file +<dtml-if path>AND path = <dtml-sqlvar path type="string"></dtml-if> +<dtml-if to_date>AND date <= <dtml-sqlvar to_date type="string"> </dtml-if> diff --git a/product/CMFActivity/skins/activity/SQLQueue_setPriority.zsql b/product/CMFActivity/skins/activity/SQLQueue_setPriority.zsql index 72ab5eef3dce84d25dfd8ec908706f7f64332478..39c46c1b3c8a9e17ed09fc6fdf2259dd0f1de2b4 100755 --- a/product/CMFActivity/skins/activity/SQLQueue_setPriority.zsql +++ b/product/CMFActivity/skins/activity/SQLQueue_setPriority.zsql @@ -8,11 +8,13 @@ class_name: class_file: </dtml-comment> <params>uid -priority</params> +priority +date</params> UPDATE message_queue SET priority = <dtml-sqlvar priority type="int">, - processing = 0 + processing = 0, + date = <dtml-sqlvar date type="string"> WHERE uid = <dtml-sqlvar uid type="int"> diff --git a/product/CMFActivity/skins/activity/SQLQueue_writeMessage.zsql b/product/CMFActivity/skins/activity/SQLQueue_writeMessage.zsql index 524eef3f45c9e7c9e30bd0f2b7d2705edd44966f..c6fafedc78f06d06a67231ed0107761ae1037829 100755 --- a/product/CMFActivity/skins/activity/SQLQueue_writeMessage.zsql +++ b/product/CMFActivity/skins/activity/SQLQueue_writeMessage.zsql @@ -10,10 +10,12 @@ class_file: <params>path method_id message -priority</params> +priority +date</params> INSERT INTO message_queue SET path = <dtml-sqlvar path type="string">, + <dtml-if date>date = <dtml-sqlvar date type="string">, <dtml-else>date = <dtml-sqlvar "_.DateTime()" type="string">, </dtml-if> method_id = <dtml-sqlvar method_id type="string">, processing_node = -1, processing = -1,