Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » DBISAM Technical Support » Support Forums » DBISAM Client/Server » View Thread |
Messages 1 to 5 of 5 total |
Transaction timeout |
Sat, Feb 6 2016 7:35 AM | Permanent Link |
Jose Eduardo Helminsky HPro Informatica | I know we have to keep the transaction time shortest possible but sometimes wrong code, big processes, etc. can slow down a lot a duration of a transaction and other users can be affect with that.
Is it possible to configure a timeout for a transaction ? For example, if the transaction does not acquire the database lock in 60 seconds then it throws an exception. It will be amazing to show a message to the users like "Database is busy with other things, try again after 5 minutes". |
Sat, Feb 6 2016 10:02 AM | Permanent Link |
Raul Team Elevate | <<Jose Eduardo Helminsky wrote:
I know we have to keep the transaction time shortest possible but sometimes wrong code, big processes, etc. can slow down a lot a duration of a transaction and other users can be affect with that. Is it possible to configure a timeout for a transaction ? For example, if the transaction does not acquire the database lock in 60 seconds then it throws an exception. It will be amazing to show a message to the users like "Database is busy with other things, try again after 5 minutes". >> You should be able to achieve this using the TableTransLockWaitTime and TableTransLockRetryCount engine settings and handling the appropriate exception in code. These settings do have default values already so all of it is active - possible timings and retries are such that you're not running into it though. These and few other lock related settings are all under "Customizing the engine" section of the manual (look for Reserved Customizations section). Note that misconfiguring these could result in more problems - hence the note about only changing these based on elevatesoft recommendations. Raul |
Mon, Feb 8 2016 6:18 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Eduardo,
<< Is it possible to configure a timeout for a transaction ? >> Raul's answer is correct: http://www.elevatesoft.com/manual?action=viewprop&id=dbisam4&product=rsdelphi&version=XE &comp=TDBISAMEngine&prop=TableTransLockRetryCount http://www.elevatesoft.com/manual?action=viewprop&id=dbisam4&product=rsdelphi&version=XE &comp=TDBISAMEngine&prop=TableTransLockWaitTime Tim Young Elevate Software www.elevatesoft.com |
Wed, Feb 10 2016 8:21 AM | Permanent Link |
Jose Eduardo Helminsky HPro Informatica | Tim and Raul
I know the risks involved but I think it worths a try. Does it work in C/S ? IOW, these engine settings can be configured at client session ? I have read the manual but there are no description of these properties "TableTransLockWaitTime" and "TableTransLockRetryCount". With the engine inactive TableTransLockWaitTime = 60 seconds or 60 * 1000 miliseconds ? And what the purpose of the property TableTransLockRetryCount ? Thanks in advance |
Thu, Feb 11 2016 6:31 AM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Eduardo,
<< Does it work in C/S ? >> Yes. << IOW, these engine settings can be configured at client session ? >> No, it's an engine-level setting, and must be configured for the entire server. ElevateDB offers a per-call transaction timeout. Tim Young Elevate Software www.elevatesoft.com |
This web page was last updated on Friday, April 19, 2024 at 07:09 AM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |