Subject Re: What is ForcedWrites default?
Author kimon_the_athenian2
Thanks guys for your replies!

I never thought of my buggy program messing with embedded FB memory
because I develop it with FB server and so I had no problems so far.

I think it will take long time until I can call my program robust, so
I consider deploying FB as server from now on.

... I was so proud of my simple and clean installer :(

But, can my program mess with embedded FB in win 2000/XP too like in
95?
And, is FB server memory protected from my bugs both in 2000/XP and
95/98 ?

Aivar




--- In firebird-support@yahoogroups.com, Olivier Mascia <om@t...>
wrote:
> On Fri, 10 Dec 2004 14:33:24 -0000,
> "kimon_the_athenian2" <kimon_the_athenian2@y...> wrote:
>
> k> What could have caused this? (My client admits having turned
power
> k> off when the program hanged but I believe there was no db
request in
> k> progress at that time; im not sure, though).
>
> If your program hang, then the embedded server too.
> If your program has a bug and wipes out a part of its memory space,
the
> embedded server and its data structures (in your memory space) are
at
> risk. This risk is even higher than a hard stop. It can lead to
writing
> erronenous bytes in the database.
>
> If you're concerned by robustness, forget the embedded dll.
> If you want the server to be tightly integrated with your app,
install
> its server components along with your app (through your own app
setup)
> to some subdirectory of your application target. Ship a
firebird.conf
> file preconfigured for your needs. You can even go as far as having
your
> app start and stop the independent server when the app start/stop.
But
> you run the database in a separate process space than the app. It is
> much more robust. And if you take care of keeping forced writes on
and
> teach the users not to power off, you will have success and zero
support
> requests.
>
> If you read among the lines... Yes I am among the ones who think
that
> the server as an embedded DLL is something that should never have
> existed, especially on Windows OS.
>
> Installing a per-application private copy of the server, as
described
> (very shortly) above, involves installing some more files than a
single
> DLL, yes. But not hundreds of files, not even tens of them.
>
> Embedded server in a DLL might be usefull for some short-running
tools
> or utilities. For an application serving end-users, I would not
even try.
>
> --
> Olivier Mascia