|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Filter Criteria Evaluation |
« View previous topic :: View next topic » |
Author |
Message
|
JamesV |
Posted: Thu Aug 11, 2005 6:57 am Post subject: Filter Criteria Evaluation |
|
|
Newbie
Joined: 11 Aug 2005 Posts: 1
|
What is the order of filter expression evaluation? How are the subexpressions broken down? What parts are done by DB2 and which by Workflow?
We are using MQWF 3.5 (Not sure of which FP >= 1)
On using a filter like 'GDCmember like '*xyz*'' with a threshold of 100 in queryWorkItems(), no results are returned. I know that there are about 25 workitems that should be produced - there is a large number of total workitems active in WF. However, with a threshold of 10000, the C++ API returns an error of too many rows. It would appear that the threshold is applied to SQL query, and not to the rows satisfying the filter expression.
Similar result adding 'GDCmember like '*xyz*' AND owner = current_user'.
BUT - and it's a big BUT...
On changing the expression to 'owner = current_user AND GDCmember like '*xyz*'' all works as expected.
The key here is understand how the query is understood and evaluated.
Thanks in advance. |
|
Back to top |
|
 |
hos |
Posted: Mon Aug 22, 2005 2:24 am Post subject: |
|
|
Chevalier
Joined: 03 Feb 2002 Posts: 470
|
Hi,
the order of expressions should not make any difference to the resulting DB SELECT statement. Switch on the trace and check the resulting SELECT statements for both cases. I am pretty sure this will give you a clue what is going wrong. |
|
Back to top |
|
 |
elvis_gn |
Posted: Mon Aug 22, 2005 3:52 am Post subject: |
|
|
 Padawan
Joined: 08 Oct 2004 Posts: 1905 Location: Dubai
|
Hi James,
When u do a queryWorkItems() the number of workitems specified as the parameter are first fetched....so if you gave 100, the first 100 in the list would be fetched....
Only through these 100 will your condition be searched and an even further filtered list returned to you.
As you said 10000 will not work, the query fails. I think you can have something around 1700....1500 would be a safe bet.
You will find in the forum ways to increase it to 7500 but also replies that if you need to fetch so many, u need to check your design rather... |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|