Experts/Guru,
Would really appreciate if you can share your thoughts on this, just from knowledge base perspective.
In our plugin code we use .Retrieve and .RetrieveMultiple left/right/up/down,
One of the things we have done religiously is for both Retrieve and RetrieveMultiple we have always used ConditionOperator.Equal for our conditionexpression.
Recently in our Online QA envrionment we have come across strange SQL timeout issue that would point to "RetrieveMultiple".
One doing some quick trace and also found out in this post:
http://codemonkeyisperson2.blogspot.ca/2011/07/had-interesting-problem-today-trying-to.html.
So look story short, we changed the ConditionExpression from ConditionOperator.Equal to ConditionOperator.Like and it worked like charm.
We haven't found any issues yet.
QUESTION IS:
All our conditionexpressions are simple comparision nothing complicated.
Shall we do system wide FIND/REPLACE from ConditionOperator.Equal to ConditionOperator.Like so we can avoid "SQL Timeout" longer term?
Any potential problem do you see with this approach and would you recommend that mass change?
Will look forward to hear experts opinion.
Thanks,
Sam
QueryExpression query = new QueryExpression { EntityName = "contact", ColumnSet = new ColumnSet(new string[] { "lastname","fullname" }), Criteria = { Conditions = { new ConditionExpression("contactid",ConditionOperator.Equal,ANYGUIDVALUEPASSED) } } };
Please VOTE AS HELPFUL if applicable.