Monday, June 22, 2009

SBL-DBX-00083: Unable to start due to incorrect system preference setting

No Parameter has been changed on the Siebel Server and no settings has been touched and suddenly this error started coming while running "Database Extract" component. So the way everybody's next step is to search for "SBL-DBX-00083" in Metalink, I also tried the same thing and very easily got to know that the solution for this problem can achieved by following the below steps :

a) Go to "Administration - Application -> System Preferences"
b) Query for : "Docking: Transaction Logging" parameter and change the value to "True"
c) Restart the Siebel Server
d) Restart the "Transaction Processor" component.

You must be thinking when the resolution is already available in Metalink, then why I am explaining that here..... :), because there is something new I observed.

Let me tell you what exactly happened and I think you might be interested in reading that. When I went to "Administration-Application -> System Preferences" view and queried for "Docking: Transaction Logging" parameter, I found none.
So I thought it might not be there (just a guess), finally I decided to create a new one with the value "TRUE". Hope I am going into the right direction as I was just following what is written in Metalink. After that restarted the Siebel Server and want to check if "Transaction Processor" component was running, but it wasn't. So I just restarted it, but I saw that the "Transaction Manager" has again got errored out with the error : "SBL-TXP-00011: Unable to Start the APIs". hmmmmm... I haven't got rid of one error and I found another one. This is what Siebel world is :)

Again went to the Support Web to check for the resolution and this is something strange now. The resolution for this error is also the same that I need to have "Docking: Transaction Logging" parameter to "TRUE". But I have already created that one, right?

I am not sure what is going on? Why Siebel is not accepting the parameter value that I have just mentioned under System Preferences view?

Idea came into my mind and here below is what it was :

a) Go to Adminitration-Application -> System Preferences view.
b) Do a "About View" to check for the Business Component Name. It was "System Preferences".
c) Go to Siebel Tools, check for the table name. It was "S_SYS_PREF".
d) Run the below query :
Select * from siebel.s_sys_pref
where sys_pref_cd like 'Dock%'
I got surprised, when I saw two records returned with the following names :

a) Docking:Transaction Logging with Value = "FALSE"
b) Docking: Transaction Logging with Value = "TRUE"

Can you observe the difference in the name of the parameters above two. Second one have a space after "Docking: ".

That means the parameter was already existing but not displayed on the UI and by mistake I have created a new one. So I deleted the one I created from UI and changed the value for the exiting one from backend like this :
update siebel.S_SYS_PREF
set val = 'TRUE'
where sys_pref_cd like 'Dock%'

restarted the Siebel Server and found that Transaction Processor is also running fine. Tried with a new Database Extract again and it went fine.

Be careful from now on, it may happen with you as well. If something is not available on the UI, that doesn't mean it is not available in the database. :)

15 comments:

  1. Not sure what version of siebel you are working on.

    "Transaction Logging" is Siebel Remote Preference. So you will find this system preference (Enable Transaction Logging) in Administration - Siebel Remote > Remote System Preferences View

    ReplyDelete
    Replies
    1. I couldn't find it until I read your comment. thanks !

      Delete
  2. Hi, I found this very useful. I updated the below sql in the db and did not even restart the Siebel services.

    Very useful and thanks very much.

    ****************
    update siebel.S_SYS_PREF
    set val = 'TRUE'
    where sys_pref_cd like 'Dock%'
    ********************

    ReplyDelete
  3. Thanks for the post, Gaurav. Same thing happened to me and tried as suggested by the 2nd commenter, and it worked fine. Thanks to both.

    ReplyDelete
  4. Very Good! Solved my problem.

    ReplyDelete
  5. Thanks!!!!!! It was useful! Zsófi, from Hungary

    ReplyDelete
  6. Very helpful, Thanks!!!!!

    ReplyDelete
  7. If you could not find "Docking:Transaction Logging" in Adminitration-Application -> System Preferences view

    Go to Administration - Siebel Remote -> System Preferences view and set enable Transaction Logging flag to TRUE.

    ReplyDelete
  8. thanks lot Gaurav Gupta, Very useful. If you update in SQL we no need to bounce the siebel services.

    ReplyDelete
  9. Thanks! Very useful and actual.

    ReplyDelete
  10. Thanks .. very nice cache. and is very useful

    ReplyDelete
  11. Thanks..indeed very useful

    ReplyDelete