Improving List of Values performance

January 14, 2008 at 10:14 am 4 comments

A quick titbit to get things rolling again after an extended silly season hiatus…

Whenever you need to access lists of values data in your configuration, note that of the business components defined on the S_LST_OF_VAL table, Picklist Generic is cached while List Of Values is not. The impact of this is that repeated queries to Picklist Generic will be served from the memory of the Object Manager, whereas queries to List Of Values will always hit the database. So for improved performance be sure to use Picklist Generic in your configuration, not List Of Values.

Caching behaviour is controlled by the business component property Cache Data: when this property is set to true then the database is only read once for a given query. You can see in Object Explorer that Picklist Generic has Cache Data set to true, while it’s false for List Of Values. This configuration allows the List Of Values BC to be used for managing LOVs, where it’s critical to always have the current database values, while Picklist Generic can be used where performance is more important.


Entry filed under: Configuration, Siebel.

International Phone Formats Siebel User Group Australia Event – 21 February


  • 1. Paul F  |  January 16, 2008 at 9:47 pm

    Incidentally, it appears that Siebel OOTB has decided NOT to set Cache Data to true for Picklist Generic – but has for many of the hierarchical LOV BCs.

  • 2. stuandgravy  |  January 17, 2008 at 8:28 am

    Thanks for the info Paul. It’s interesting, too, since in the v8 docs Oracle still use Picklist Generic as an example of where Cache Data should be True…

  • 3. Paul F  |  January 21, 2008 at 8:19 am

    Update – I raised an SR to ask about why this is the case, and here is the response (if you trust it anymore than anything else from those guys…) (Incidentally, how bad is Metalink???!!!):

    You are correct in that in the OOTB functionality the BC Picklist Generic have the cache set to ‘FALSE’. The reason for this is that as standard the performances of picklists are not an issue and the data does not need to be cached.

    However, the performance guide:
    Siebel Performance Tuning Guide > Tuning Customer Configurations for Performance > Best Practices for Business Objects Layer > Using Properties to Improve Picklist Performance


    To cache the content of certain picklists for subsequent use in the same user session, the property Cache Data property should be set to TRUE for the PickList Generic business component. By default, this property is TRUE.

    The information in the first line is correct and that to aid performance with picklists, the cache data setting should be set to TRUE. The second line of this statement is incorrect and the default setting in v as you know is FALSE.

    I have therefore raised a documentation defect CR#12-1MVR1AT.

    In your case you have performance issues with your picklists and I would set the cached data setting to be TRUE so that this is cached and the performance should improve.

  • 4. stuandgravy  |  January 21, 2008 at 8:38 am

    Mmm… not entirely convincing response. A good one to keep an eye out for in performance testing, cheers Paul.


%d bloggers like this: