• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1383
  • Last Modified:

Interbase database running slow

I have a client that runs a 4 gig database on interbase 7.5. It runs slow. I am not the support for the application but support the server and network. I have suggested they should have a seperate interbase server for the application. They have about 25 users. They are running it on a single HP ML330 G3 server with two processors(about 3gig) 3gig ram two raid 1 arrays. The server is about 4-5 years old. The OS is SBS 2003 so they run Exchange on the same box. They also have a SQL Express database plus all the user docs and printing. The app provider are saying the server should be ok to run their app and there must be something else wrong. They are suggesting there is something wrong with the network at the moment. What I am looking for is an informed oppinion from a suitably qualified person that can point to any recommended standard or best practice to say that this approach is either right or wrong. I have another client running interbase and their app provider recommends a seperate server and doesnt support it on SBS as it doesnt run well with Exchange. I suspect this is an Interbase recomendation but cant find any reference to it. Also should they be running an interbase backup/restore on a regular basis.
0
duncaninnz
Asked:
duncaninnz
  • 8
  • 7
  • 3
2 Solutions
 
Ustin19Commented:
what is delta between oldest interesting and next transaction? It is possible that client app is designed incorrectly and transaction delta becomes too big at time.
You need do SWEEP DATABASE periodically and perform backup\restore loop
0
 
duncaninnzAuthor Commented:
Thanks I will check this out. Just a bit more info. I performed a test tonight with two users logged on and the server on a seperate switch ie no other activity on the network A transaction that basically calculates a quote based on a list of priced items and labour content took 1 min 50 seconds to complete. To print the results about 1 min 20 seconds. The same transaction run from two PCs at the same time took 50% longer. Neither result is acceptable to the client and does appear excessive for a fairly straitforward transaction. I realise that this is not an entirely scientific test.
0
 
Ustin19Commented:
please post database statistics here (output of "C:\Program Files\Firebird\Firebird_2_1\bin\gstat.exe" db)
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
NickUpsonSenior Network EngineerCommented:
please do a backup and restore and then rerun the same test.
0
 
duncaninnzAuthor Commented:
I think I may have put this question in the wrong zone. Its Borland Interbase not Firebird. Sorry.
0
 
NickUpsonSenior Network EngineerCommented:
the interbase/firebird zone is for both products as they come form the same base and are still very similiar, the request for output from gstat still applies, the path will just be different
0
 
duncaninnzAuthor Commented:
Gstat attached
Publication1.jpg
0
 
NickUpsonSenior Network EngineerCommented:
well the gstat output shows that there are 44575 - 29374 = 15k transaction active, with 25 users it should be more like 500, depending upon what they are doing. Either the client program they are using does not commit it's transaction often enough or one or more users have started a transaction and left the terminal sitting there, holding things up. Either way that is certainly one possible of the speed issues.

To directly address your questions as I can pick them out:
Their approach (have SBS + interbase + exchange on one machine) can be ok, it depends upon how heavly they are being used. look at the operating system stats to see how much the processor/disks are working.

they cerainly should be doing a backup daily (or more), a restore can also be a good idea depending upon how much the data has changed I would normally do one weekly
0
 
duncaninnzAuthor Commented:
At the time of the gstat there were no active users.
0
 
NickUpsonSenior Network EngineerCommented:
there has to have been at least one active transaction
0
 
duncaninnzAuthor Commented:
There was no one in the office but the users have a habit of leaving the app open and their screen turned on.
0
 
NickUpsonSenior Network EngineerCommented:
well that counts as a user, my guess is that someone has done that for several days, on holiday or something like that. You need to do so kind of timeout in the client program so that this can't happen.
0
 
duncaninnzAuthor Commented:
I did suggest that the interbase service is stoped prior to the backup and restarted after. The app provider was non commital on this. Presumably this would kill any sessions left open by users. Are you saying though that this explains the 15k active transactions
0
 
NickUpsonSenior Network EngineerCommented:
yes, the 15k transactions are being held open by something, rather than stop the service and crash stop I'd take the database off-line which allows the database engine to manage the transactin shutdown (gfix -shut from memory)
0
 
NickUpsonSenior Network EngineerCommented:
the 15k may not be all the problem but you will never find the rest until that is sorted
0
 
duncaninnzAuthor Commented:
Thanks for your help on this. I think I have enough to batter the app provider with this. They have been looking at it for 2 years so I would have thought they would have done something by now.
0
 
Ustin19Commented:
it can be client software problem (too big number of transactions which are not commited, or commited with retain option {.commitretaining method used}) - i think trouble is here, bcs 15k delta is TOO big for 25 extrimely active users
0
 
duncaninnzAuthor Commented:
The app provider has now fixed their application and the outstanding transactions have massively reduced and speed issues have been resolved. Thanks for your help. Surprised it took the app provider two years for what you sussed in minutes.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 8
  • 7
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now