Customer Portal

Closing DB connection

Comments 5

  • Avatar
    imriskal
    0
    Comment actions Permalink
    Hello,

    Your DB server should log the error with it's stack trace into some error log file. Could you please try to find it and share with me? And could you please externalize your db connection and share it as well? Without your password, of course.

    Thanks.
  • Avatar
    scl84
    0
    Comment actions Permalink
    Hi Lubos,

    Unfortunately, the DB server is at client side and we don't have access to that logs.
    Also due to confidentiality issue, we can not share the client's IP address.

    user=cloveruser
    dbDriver=de.hybris.vjdbc.VirtualDriver
    jdbcSpecific=GENERIC
    name=HybrisConnection
    dbURL=jdbc\:hybris\:flexiblesearch\:http\://....\:9001/virtualjdbc/service

    Regards,
    SCL
  • Avatar
    imriskal
    0
    Comment actions Permalink
    Thanks for the connection details. I understand the confidentiality issue, of course. However, I miss information about threadSafeConnection flag being set to either true or false. It is typically a part of this cfg file and it is essential piece of information because it directly influences the overall behavior.

    If the connection is thread safe (threadSafeConnection=true), each component in a graph uses it's own db connection instance which is closed after the component is finished. There is a theoretical chance that if you use too many components working with DB in one graph phase, they all get their own connection and connection limit set on DB server's side prevents you from creating more connections. If another component attempts to create one more, an error is thrown.

    If the connection is thread unsafe (threadSafeConnection=false), all components share exactly one instance of connection. This type of connection is closed at the very end of the graph run. This on the other hand brings a potential risk of error due to timeout. If for example DBInputTable reads something right after the graph starts, then you process the data for two hours and then you try to save the data, a timeout error may appear.

    Regarding the error code 500, we are unfortunately unable to solve it without the log. Hopefully something from my explanation guides you to the issue location even without the log file.

    Regards,
  • Avatar
    scl84
    0
    Comment actions Permalink
    Thanks Lubos for your reply.

    Could you please let me know what will be the default value of threadSafeConnection if we are not setting it?

    Thanks and regards,
    SCL
  • Avatar
    imriskal
    0
    Comment actions Permalink
    I think that threadSafeConnection option is by default set to true.

    Regards,

Please sign in to leave a comment.