Board index » delphi » Server shuts down and restarts

Server shuts down and restarts

About once a day Interbase shuts down and Guardian restarts it. The log
doesn't give much advice on whats going on, but here it is anyway:

DBSERVER (Client) Tue Feb 01 07:28:09 2000
 C:\Program Files\InterBase Corp\InterBase\bin\ibserver.exe: terminated
abnormally (-1)

DBSERVER (Client) Tue Feb 01 07:28:09 2000
 Guardian starting: C:\Program Files\InterBase
Corp\InterBase\bin\ibserver.exe

There are no other errors right before or after this happens. We are using
v. 5.6 on NT 4.0 with 95/98 clients(not all clients are using the 5.6 client
but some are)  with some Delphi 5 apps using Interbase Express. I am using
many transactions within the apps as to not leave one transaction open all
the time. I am currently working on timing out transactions that the users
leave open.

Any other advise?

--
William Triber
MIS
Garrett Electronics Corp.
wtri...@garrettelec.com
805 922 0594

 

Re:Server shuts down and restarts


I don't known why your server is downing. The only suggestion I can give to
you is install in all PC clients the 5.6 client software.

On the other hand I'm interresed in how you think trap activity (keyboard,
mouse, database I/O, etc) to reset the inactivity timer without writting so
much code.

Regards.

William Triber escribi en mensaje <87796s$j...@bornews.borland.com>...

Quote
>About once a day Interbase shuts down and Guardian restarts it. The log
>doesn't give much advice on whats going on, but here it is anyway:

>DBSERVER (Client) Tue Feb 01 07:28:09 2000
> C:\Program Files\InterBase Corp\InterBase\bin\ibserver.exe: terminated
>abnormally (-1)

>DBSERVER (Client) Tue Feb 01 07:28:09 2000
> Guardian starting: C:\Program Files\InterBase
>Corp\InterBase\bin\ibserver.exe

>There are no other errors right before or after this happens. We are using
>v. 5.6 on NT 4.0 with 95/98 clients(not all clients are using the 5.6
client
>but some are)  with some Delphi 5 apps using Interbase Express. I am using
>many transactions within the apps as to not leave one transaction open all
>the time. I am currently working on timing out transactions that the users
>leave open.

>Any other advise?

>--
>William Triber
>MIS
>Garrett Electronics Corp.
>wtri...@garrettelec.com
>805 922 0594

Re:Server shuts down and restarts


Umh, if you and your users can afford the HW and $$$ to run SQLServer and
you need highly optimized responses, I see no reason to not try SQL7.
However, keep in mind no database engine is perfect so you have two points
to worry about in SQL7:
- Qualification of names, same as in prior versions, these ugly
constructions
select fields from database.owner.table where...
- Conflicts among users. SQL7 cannot help you here. After all, it's a
"normal" relational engine.
- Buggy or weak replication, hope you don't have to use it.

Each architecture has a tradeoff. And several enhancements announced in SQL7
as never-seen features were present in IB before v4.0.

C.

Quote
William Triber wrote in message <87af74$2...@bornews.borland.com>...
>I've changed my mind on timing out transactions. Like you implied, it ended
>up being too much work for something I don't even think is going to make a
>difference. We are now looking to go to MS SQL 7.

>"Sergio Enrique Samayoa Solis" <sess...@infovia.com.gt> wrote in message
>news:87a3e4$2l48@bornews.borland.com...
>> I don't known why your server is downing. The only suggestion I can give
>to
>> you is install in all PC clients the 5.6 client software.

>> On the other hand I'm interresed in how you think trap activity
(keyboard,
>> mouse, database I/O, etc) to reset the inactivity timer without writting
>so
>> much code.

>> Regards.

>> William Triber escribi en mensaje <87796s$j...@bornews.borland.com>...
>> >About once a day Interbase shuts down and Guardian restarts it. The log
>> >doesn't give much advice on whats going on, but here it is anyway:

>> >DBSERVER (Client) Tue Feb 01 07:28:09 2000
>> > C:\Program Files\InterBase Corp\InterBase\bin\ibserver.exe: terminated
>> >abnormally (-1)

>> >DBSERVER (Client) Tue Feb 01 07:28:09 2000
>> > Guardian starting: C:\Program Files\InterBase
>> >Corp\InterBase\bin\ibserver.exe

>> >There are no other errors right before or after this happens. We are
>using
>> >v. 5.6 on NT 4.0 with 95/98 clients(not all clients are using the 5.6
>> client
>> >but some are)  with some Delphi 5 apps using Interbase Express. I am
>using
>> >many transactions within the apps as to not leave one transaction open
>all
>> >the time. I am currently working on timing out transactions that the
>users
>> >leave open.

>> >Any other advise?

>> >--
>> >William Triber
>> >MIS
>> >Garrett Electronics Corp.
>> >wtri...@garrettelec.com
>> >805 922 0594

Re:Server shuts down and restarts


Claudio Valderrama C. skrev i meldingen
<87d493$4...@bornews.borland.com>...

Quote
>Umh, if you and your users can afford the HW and $$$ to run SQLServer
and
>you need highly optimized responses, I see no reason to not try SQL7.
>However, keep in mind no database engine is perfect so you have two
points
>to worry about in SQL7:
>- Qualification of names, same as in prior versions, these ugly
>constructions
>select fields from database.owner.table where...
>- Conflicts among users. SQL7 cannot help you here. After all, it's a
>"normal" relational engine.
>- Buggy or weak replication, hope you don't have to use it.

>Each architecture has a tradeoff. And several enhancements announced in
SQL7
>as never-seen features were present in IB before v4.0.

Claudio, I do respect your vast knowledge on IB. However, if you deny
the fact that IB is one of the less stable DB servers in the "full-size"
class, I must say I am wondering....
I am a self-thought DB programmer, having done a lot of projects on
Paradox, a few, larger projects on Oracle, and now, one IB project (by
the means of this NG).
I crashed and corrupted Paradox tables, I have crashed the IB server and
corrupted databases in somewhat 5-6 different ways, but I never crashed
an Oracle server. It's another world, actually.
The smart multiuser model implemented in IB is a good idea. But it's a
long way from having a good idea to actually being able to make it
stable and reliable. Sorry to sy it, but IB is somewhere down that road.

In my experience, IB has 3 major advantages:
- Easy Installation & maintenance
- Multi-Generation model is *very* powerful for those needing it.
- Ability of running on local PC with all features. Actually a good
Paradox/Access replacement.

On the other side....:
- Needs maintenance. Heavily relying on backup/restore.
- Fragile metadata structures. Inconcistency is a rule rather than an
exception. Unless you create a database and leave it untouched.
- Crashes every now and then. Unless you know it like your wife, husband
or pet and have a good intuition.
- Very bad on cooperation. The server has a habit of getting totally
invaded by the IB server (NT). Run Oracle on the same server, and it may
not get more than 1% CPU time when both are running queries.
- Multi-generation architecture makes IB *very* slow and RAM-intensive
on certain operations. Doesn't take 100% advantage from indices, can't
use them for counts & selects on key values, e.g..
- "Tuning" gives no hits in the IB docs. Abscent, other than the
classical "good DB design". Lack of features like deciding where to put
index files, etc.
- Primitive procedure language
- Lack of built-in features like NVL, Decode, etc., relying on external
function libraries.
- Not 1 - one published book exists on IB programming. Documentation is
big, clumsy (5 books that you constantly swap between to try and find a
certain term) and requires a real study.

I would not recommend IB if one or more of the 3 advantages mentioned
are not of crucial importance.

--
Bjoerge Saether
Consultant / Developer
Asker, Norway
bsaether.removet...@online.no (remove the obvious)

Re:Server shuts down and restarts


Bj?rge - I'm not Claudio, but anyway, here goes:
I agree on the point that IB needs a book or two (preferably _the_ book
(still unwritten by Ann H.)).  However, I haven't - touch wood! - been
bothered (too much) with the other problems you mentioned.
I do miss string and date functions (to be included in IB/6?).  I do
have the UDF-library, but only tested it - haven't had any use for those
(yet).
'No tuning' can be both a problem and a blessing.  Maybe I have been
very careful (or paranoid, or not very adventurous), but changing
metadata, using triggers and SPs never caused much of a problem.
I have a gbak running each night, but I seldom restore.  I did the first
backup/restore cycle after about 6 months.  Otherwise, I occationally
restore to test the validity of the backup.
Also, Ann H. and others ares very generous with advice, I learned a lot
on the MERS ng.  And IB docs isn't all that bad ...
What I do miss is a way to kill a runaway query.  And the optimizer
could be improved.

In short: I would not hesitate to recommend IB (depending on
circumstances, of course), and I am - still - glad I/we chose IB.

Aage J.

Quote
"Bj?rge S?ther" wrote:
> <snip>
> Claudio, I do respect your vast knowledge on IB. However, if you deny
> the fact that IB is one of the less stable DB servers in the "full-size"
> class, I must say I am wondering....
> I am a self-thought DB programmer, having done a lot of projects on
> Paradox, a few, larger projects on Oracle, and now, one IB project (by
> the means of this NG).
> I crashed and corrupted Paradox tables, I have crashed the IB server and
> corrupted databases in somewhat 5-6 different ways, but I never crashed
> an Oracle server. It's another world, actually.
> The smart multiuser model implemented in IB is a good idea. But it's a
> long way from having a good idea to actually being able to make it
> stable and reliable. Sorry to sy it, but IB is somewhere down that road.

> In my experience, IB has 3 major advantages:
> - Easy Installation & maintenance
> - Multi-Generation model is *very* powerful for those needing it.
> - Ability of running on local PC with all features. Actually a good
> Paradox/Access replacement.

> On the other side....:
> - Needs maintenance. Heavily relying on backup/restore.
> - Fragile metadata structures. Inconcistency is a rule rather than an
> exception. Unless you create a database and leave it untouched.
> - Crashes every now and then. Unless you know it like your wife, husband
> or pet and have a good intuition.
> - Very bad on cooperation. The server has a habit of getting totally
> invaded by the IB server (NT). Run Oracle on the same server, and it may
> not get more than 1% CPU time when both are running queries.
> - Multi-generation architecture makes IB *very* slow and RAM-intensive
> on certain operations. Doesn't take 100% advantage from indices, can't
> use them for counts & selects on key values, e.g..
> - "Tuning" gives no hits in the IB docs. Abscent, other than the
> classical "good DB design". Lack of features like deciding where to put
> index files, etc.
> - Primitive procedure language
> - Lack of built-in features like NVL, Decode, etc., relying on external
> function libraries.
> - Not 1 - one published book exists on IB programming. Documentation is
> big, clumsy (5 books that you constantly swap between to try and find a
> certain term) and requires a real study.

> I would not recommend IB if one or more of the 3 advantages mentioned
> are not of crucial importance.

Re:Server shuts down and restarts


Please watch the over quoting.  Thank you.

Quote
"Bj?rge S?ther" wrote:

--
Jeff Overcash (TeamB)   On waves of silver I dreamed of gold
(Please do not email    'Till I lost the peace that dreaming gives
 me directly unless     I dreamed of the moment of my own death
 asked.  Thank You)     That no one ever dreams and lives (Marillion)

Re:Server shuts down and restarts


Claudio Valderrama C. skrev i meldingen
<88lcnv$r...@bornews.borland.com>...

Quote

>Bj?rge S?ther wrote in message <88iq72$pc...@bornews.borland.com>...
>>Claudio Valderrama C. skrev i meldingen
>><88i1sl$p...@bornews.borland.com>...
>>>Bj?rge,
>>>better later than never.

>>Oh, no problem. I'm still running the same query as I did 2 weeks
>>ago....;-)

>Nice. Can you make it run for a year and put it in the Guiness?
>:-)

Hi !
I'm fiddled with the "stopping problem", and don't know whether I should
reset the server and move on, or wait for another week or so.. One never
knows when it will be done...Would be nice with events being posted
before committing the query...;-)

Quote
>So, really, I'm grateful to exchange ideas with
>another self-taught man like you.

Well, sometimes I'm actually thinking of having a few classes in
computer science (educated sociologist  & service-electrioncs), got some
big, black holes in my knowledge...

Quote
>- In ANY IB version, mixing any aggregate function with rdb$db_key will
kill
>the server immediately. In your case, I believe this suffices:
>SELECT  F.RDB$DB_KEY,
> MAX(R.BET_DATO)
>FROM  FAKTURA_IMP F
>You don't need to execute this, only prepare the statement and crash,
boom,
>bang. Note the sentence is ill-formed, because there's no sense in
getting
>one record-value (db_key) with a summary value (max), but the server
gives
>up before validating it.

>I assume you understand your original sentence is illegal.

Well, yes, it doesn't make sense, but a sensible version could be a
driving table returning all rows+db_key and a joined table returning
aggregate fields. The problem is that you cannot group by db_key...

Quote
>>And in case of a crash, IB seems to run into a deadlock situation,
>>locking both the server and the client. You actually have to push the
OK
>>button on the error dialog before the client knows anything about the
>>crash.

>Guesswork: there seems to be one mutex or semaphore to handle
connection and
>disconnection, so there's no way to get out of the problem in these
>deadlocks. They have been described as "system wide deadlocks". See IB
>newsgroup in mers for more details.

Are you sure about this ? I've come to that you may not do metadata
changes that would affect any active transactions.

Quote
>>I've described all the metadata "crashes" that don't cause the server
to
>>crash, just corrupts the database and produces error messages caused
by
>>vast securty holes in metadata handling.

>This is a consequence of having metadata affected by versions, too. And
when
>you change a stored proc, other users continue using the old version
until
>the last connection that used that version is terminated. Then as users
>begin reconnecting, they see the new version. This seems to be a
consequence
>of the cache for stored procedures.

Well, whatever the intention was, it doesn't do what was intended. The
worst thing I've seen, is creating a table where only 50% of the fields
were present in the created table. This happened when I did a DROP TABLE
immediately followed by a CREATE TABLE with the same name. My theory is
that poor synchronization is the reason.

Quote
>with IB Server running and the user connected to
>the Internet, it's possible for a malicious person to connect to port
>3050/tcp and use the default IB superuser to fiddle with the data.

This one is a bit scary...I'll keep it in mind...

Quote
>> I would never suggest Oracle as a platform
>>to anyone without experience, so Interbase is my choice on C/S
databases
>>for the time being.

>Maybe if you make an arrangement with some Oracle representative so
they
>install Oracle in each laptop you want to use with your programs.
>:-)
>I believe Personal Oracle is only for development, the same way the
Personal
>version of IBM's DB/2 (Universal Database) is targeted: they're hooks.

Personal Oracle is about as powerful as Paradox. No SP's, no Triggers.
It only makes sense in conjunction with some replication functionality
that I suppose Oracle is providing.

...a short, fragmented answer, to keep down quoting...;-)

--
Bjoerge Saether
Consultant / Developer
Asker, Norway
bsaether.removet...@online.no (remove the obvious)

Re:Server shuts down and restarts


42.

--
Bjoerge Saether
Consultant / Developer
Asker, Norway
bsaether.removet...@online.no (remove the obvious)

Re:Server shuts down and restarts


Quote
"Claudio Valderrama C." wrote:

> I have a collection of sentences that kill each IB version since 4.0 and
> perhaps before. Some sentences don't work the newer versions. For example:
> [snip]

        Here's another one for your collection, Claudio.  I've tried this
several times with 4.2, but not with 5.6 ('cause it annoys the other
developers here when I kill the server...).

        If you have a WHERE clause of the form:
WHERE (X = 1000) OR (X = 1001) OR (X = 1002) [...]

        (Yes, I know about IN, but that's beside the point.)

        After a certain number of ORs, ranging from aroun 150 to 500, the
server will crash when you run the query.  I'm not sure if the problem
is the number of ORs, or the absolute length of the clause.

        -Craig

--
Craig Stuntz                    cstuntz@no_spam.vertexsoftware.com
----------------                -----------------------------
Delphi Developer                Vertex Systems Corporation
& Cat Wrangler                      http://www.vertexsoftware.com

Re:Server shuts down and restarts


Craig:

Perhaps the only way to be sure if it's the length of the statement is
writing some statement as
select [spaces] * [spaces] from
... you get the idea.
However, for this to happen, your ORed condition should span something like
500*12=6000 bytes of length at least.

C.

Quote
Craig Stuntz wrote in message

<38B14CD7.A4C04106@no_spam.vertexsoftware.com>...
Quote
> Here's another one for your collection, Claudio.  I've tried this
>several times with 4.2, but not with 5.6 ('cause it annoys the other
>developers here when I kill the server...).

> If you have a WHERE clause of the form:
>WHERE (X = 1000) OR (X = 1001) OR (X = 1002) [...]

Re:Server shuts down and restarts


Quote
"Claudio Valderrama C." wrote:

> Perhaps the only way to be sure if it's the length of the statement is [...]

        I stopped experimenting with this after my co-workers became annoyed
with me for repeatedly crashing the server.  If I was convinced that the
IB community would benefit from me continuing to fool with it, I could
be persuaded, but, for the time being, I just avoid writing statements
like that.

        -Craig

--
Craig Stuntz                    cstuntz@no_spam.vertexsoftware.com
----------------                -----------------------------
Delphi Developer                Vertex Systems Corporation
& Cat Wrangler                      http://www.vertexsoftware.com

Other Threads