In the last post I mentioned that we were facing a performance issue while trying to assign a Owner to Service Request and I had mentioned about the analysis and finding that we had done. In this post I will state the reason and resolution of the problem.
Before we start I would like to mention that Reason and Resolution both were found not by me but by my friend Rahul Madan.
Owner field had a Picklist associated to it and that field had Long List Property as FALSE.
This property is used to specify whether to keep focus on current record selected record or not. Which means if there are large number of records Siebel will traverse through all the records and position the cursor on the current selected record which was resulting in the performance issue.
Siebel recommends to keep this flag to TRUE in case if picklist contains more than 500 records.
Siebel was executing the blank query because it needed all the records so that it could traverse and position the cursor on the current selected record.
We checked the Long List flag as TRUE and bingo the problem was solved.