Uniface application is getting disconnected from database.

Author: santoshkumar0712@yahoo.in (santoshkumar0712)

Hi All, I need a small help on the issue which i am getting with an application that has been designed in Uniface. Whenever i am keeping my system ideal for some time then uniface application lost it connection from database and it gives a error ' Not connected to Oracle driver'. After some seconds system resumes it connection with database but between that time uniface application is showing an exceptional result. Please help me to figure out this issue. Thanks Santosh Kumar

7 Comments

  1. Adding in above detail. 1. Application is using Uniface 9. 2. This error is coming when i am leaving my application ideal for a certain period of time. 3. After that period it gives a error message 'Connection Lost' and retain its connection with database after few seconds. 4. In the next shot application works fine. Please let me know if you need any more detail. Thanks in advance. Regards Santosh Kumar


    Author: santoshkumar0712 (santoshkumar0712@yahoo.in)
  2. Hi,

    I don't know what's causing your problem, router problems etc.

    But you can use the APS Asynchronous trigger to poll the database from ideal sessions. Something like this has sometimes helped for us:

    Regards RogerW.

     

    if($result = "Timeout")
       
    sql "select anycolumn from anytable where keycolumn='timeout'","def"
       
    if($status=1)
           mytime=
    $clock
          
    message/nobeep "%%$result %%$clock"
       
    endif
    endif


    Author: rogerw (roger.wallin@abilita.fi)
  3. Hi roger,

    a nice soluition using uniface knowledge.

    ... but unfortunately this timeout in the ASYNC depends on inactivity in the application, not in the database.
    So it may not keep this database connection alive.

    Success, Uli

    As 9.4.01 documentation reads:

    $TIMEOUT generates an asynchronous interrupt after Minutes minutes have elapsed during which the user has not been active in the application; a new interrupt is generated after each period of Minutes in which the user has not been active. A maximum of 60 minutes can be set.


    Author: ulrich-merkel (ulrichmerkel@web.de)
  4. Hi,

    we have had these kind of problems, as some switch or router fell asleep after the application having been ideal for some minutes. Polling the database every minute kept the connection (switch) awake, ie. a solution not affecting the real cause of the problem.

    Regards RogerW.


    Author: rogerw (roger.wallin@abilita.fi)
  5. Hi Roger,

    We had encountered the same issue due a firewall. After 30 minutes, if the traffic is empty, the firewall cut the connexion.

    To keep a connexion on remote service, in asynch trigger, eache 28 minutes, we launch an asynchronous service

    For the database,

        After the modification of the Oracle parameter, and OS parameter, we do not have any issue.

    Regards,

    Antoine


    Author: apicaud (antoine.picaud@free.fr)
  6. ... changing database timeout is sometimes difficult to balance:

    you want to keep "orphan" clients to a minimum, so it is not wise to have timeputs of 2 weeks

    on the other hand users kill you when they come back to their application after 8 hrs and their inputted data is lost.

     

    Life can be so beautiful, Uli


    Author: ulrich-merkel (ulrichmerkel@web.de)
  7. Hi,

    What is exacly your architecture ? (OS,...)

    Have you a firewall between your client and the database ?

    Oracle have a parameter who must be set in sqlnet.ora.

    SQLNET.EXPIRE_TIME=10
    Regards,

    Antoine


    Author: apicaud (antoine.picaud@free.fr)