Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 8 of 8 total
Thread EDB Server: Database on Wireless
Sat, Dec 26 2009 10:18 PMPermanent Link

Charalampos Michael
Hello,
  I have setup up a EDB Server and the data files on a wireless
  hard drive. The problem is that if the wireless connection
  drops and re-connects the EDB Server reports errors.

  The only solution is to restart the EDB Server service.

  Shouldn't EDB Server retry to access/reconnect the
  database files ?

Any solution to this ?

Thank you

--
Charalampos Michael - [Creation Power] - http://www.creationpower.gr
Mon, Dec 28 2009 9:53 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Michael,

<< I have setup up a EDB Server and the data files on a wireless hard drive.
The problem is that if the wireless connection drops and re-connects the EDB
Server reports errors.

The only solution is to restart the EDB Server service.

Shouldn't EDB Server retry to access/reconnect the database files ? >>

Not if you're effectively using file-sharing to get access to the database
files.  In such a case, Windows is handling the communications with the
wireless hard drive, not ElevateDB.  ElevateDB doesn't even know that the
hard drive is connected via a wireless connnection.   In general, I would
not recommend using a wireless hard drive for storing databases.

--
Tim Young
Elevate Software
www.elevatesoft.com

Mon, Dec 28 2009 6:13 PMPermanent Link

Charalampos Michael
Dear Tim,

> Not if you're effectively using file-sharing to get access to the database
> files.

The EDB clients are connected to the EDB Server so there isn't any file
sharing ...

> In such a case, Windows is handling the communications with the
> wireless hard drive, not ElevateDB.  ElevateDB doesn't even know that the
> hard drive is connected via a wireless connnection.   In general, I would
> not recommend using a wireless hard drive for storing databases.

Well it works slowly than a cable connection but it quite works well. Smile

The no1 rule in these cases is to have a good & stable wireless
connection!

The problem appears when the connection is of the wireless is lost
for some reason and re-connects again ... (even for 10 seconds).

You can add a timeout which EDB Server should retry to read/write the
database files.

eg,

EDB Server waiting -> EDB Client Sends a query -> EDB Server is
processing -> While processing for some reason the connection it
drop and after 2 secs it get up -> EDB Should wait until the
connection is up (or timeout retrying) and resume or restart
the query processing -> EDB Server will send the result to the client.

In case the it timeouts it should abort reporting an error to
the EDB Client.

You know wireless speeds are getting way to high now and in the
future so expect that many will follow for various reasons.

As they say in 2010 or 2011 we'll have a Gigabit Wireless.

Thank you
--
Charalampos Michael - [Creation Power] - http://www.creationpower.gr
Tue, Dec 29 2009 9:45 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Michael,

<< The EDB clients are connected to the EDB Server so there isn't any file
sharing ... >>

Yes, but how is the hard drive connected to the machine on which the EDB
Server is running ?

<< The problem appears when the connection is of the wireless is lost for
some reason and re-connects again ... (even for 10 seconds). >>

Yes, because

<< You can add a timeout which EDB Server should retry to read/write the
database files. >>

I'll see what I can do, but no promises.  This all depends entirely on how
the OS behaves in such situations.

--
Tim Young
Elevate Software
www.elevatesoft.com

Tue, Dec 29 2009 6:09 PMPermanent Link

Charalampos Michael
Dear Tim,

> <<  The EDB clients are connected to the EDB Server so there isn't any file
> sharing ...>>
>
> Yes, but how is the hard drive connected to the machine on which the EDB
> Server is running ?

Windows 2003 Server: 192.168.0.1 - EDB Server application running

EDB Server is configured to get the catalog and database files from a
UNC Path: \\192.168.1.2\MyEDBDatabase

> <<  The problem appears when the connection is of the wireless is lost for
> some reason and re-connects again ... (even for 10 seconds).>>
>
> Yes, because

because of ?

> <<  You can add a timeout which EDB Server should retry to read/write the
> database files.>>
>
> I'll see what I can do, but no promises.  This all depends entirely on how
> the OS behaves in such situations.

I don't think the problem is the OS rather how EDB isn't
implement to handle those situations ?

Keep in mind in case of reconnection the UNC Path works from the
explorer (if you type \\192.168.1.2\MyEDBDatabase) but EDB will
report error. The only solution is to restart EDB Service.

So:
Explorer: \\192.168.1.2\MyEDBDatabase (I can see the files)
EDB Server is started and working

Wireless Connection reconnects

Explorer: \\192.168.1.2\MyEDBDatabase:
Hit F5 for refresh - no problems
I can also create files folders and do file operations.

EDB Client is sending a request (eg, a query) - EDB raises network error
EDB Server is reporting error

Restart the EDB Service

EDB Client is working OK!

My guess is that the Catalog/Database File Handles after
reconnecting are getting invalid, so all you need is to
"invalidate" the Files Handle.

Just guessing and proposing ideas, you know better what to do.

Thank you
--
Charalampos Michael - [Creation Power] - http://www.creationpower.gr
Wed, Dec 30 2009 10:55 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Michael,

<< because of ? >>

Sorry, I forgot to finish that - because the OS is reporting an error
condition back to ElevateDB for any file I/O calls to the OS.  ElevateDB has
no idea that you're using a wireless hard drive, and assumes that there is a
fatal error.

<< I don't think the problem is the OS rather how EDB isn't implement to
handle those situations ? >>

Why do you always assume that ElevateDB is doing something wrong ?
ElevateDB cannot control if the OS invalidates file handles, or does other
things during a reconnection, that will cause the current ElevateDB file I/O
state to become completely invalid.  If that is the case, then there is no
way that ElevateDB can recover from such a situation.  It would involve
resetting all sorts of shared file objects that are referenced by
higher-level objects in the engine.

<< Keep in mind in case of reconnection the UNC Path works from the explorer
(if you type \\192.168.1.2\MyEDBDatabase) but EDB will report error. The
only solution is to restart EDB Service. >>

That is not correct.  Shutting down the session and restarting it should
work fine, unless you're storing the EDB Server configuration information
there also, which I would definitely not recommend at all.

In summary, don't expect a solution to this any time soon.  It is definitely
not something that is ordinarily done, especially with data that is
valuable.

--
Tim Young
Elevate Software
www.elevatesoft.com

Fri, Jan 1 2010 7:05 AMPermanent Link

Charalampos Michael
Dear Tim,

> <<  because of ?>>
>
> Sorry, I forgot to finish that - because the OS is reporting an error
> condition back to ElevateDB for any file I/O calls to the OS.  ElevateDB has
> no idea that you're using a wireless hard drive, and assumes that there is a
> fatal error.
>
> <<  I don't think the problem is the OS rather how EDB isn't implement to
> handle those situations ?>>
>
> Why do you always assume that ElevateDB is doing something wrong ?

As i said it's not DESIGNED and from your answers it isn't designed
to handle this case. (Forget, wireless case only. It may be on USB HDD
or a LAN Disk)

> <<  Keep in mind in case of reconnection the UNC Path works from the explorer
> (if you type \\192.168.1.2\MyEDBDatabase) but EDB will report error. The
> only solution is to restart EDB Service.>>
>
> That is not correct.  Shutting down the session and restarting it should
> work fine, unless you're storing the EDB Server configuration information
> there also, which I would definitely not recommend at all.

Yes, as i said the catalog and the database files are also there so the
this doesn't work. So you're telling me that if i store only the catalog
files to the hdd and the database files on the wireless drive i'll need
only to restart the session in case the wireless drive reconnects to the
network so EDB Server will not cause any errors ?

> In summary, don't expect a solution to this any time soon.  It is definitely
> not something that is ordinarily done, especially with data that is
> valuable.

Ok, but please add it into your wish list.

--
Charalampos Michael - [Creation Power] - http://www.creationpower.gr
Fri, Jan 1 2010 12:01 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Michael,

<< As i said it's not DESIGNED and from your answers it isn't designed to
handle this case. (Forget, wireless case only. It may be on USB HDD or a LAN
Disk) >>

Yes, but a write error on anything that is physically installed in a machine
is a whole different situation.  It is almost always a catastropic
situation, and the only time that it isn't is when there is a lack of disk
space.

<< Yes, as i said the catalog and the database files are also there so the
this doesn't work. So you're telling me that if i store only the catalog
files to the hdd and the database files on the wireless drive i'll need only
to restart the session in case the wireless drive reconnects to the network
so EDB Server will not cause any errors ? >>

You can't separate the database catalog from the table files, anyways, so
its a moot point.  It doesn't really matter, though, because the internal
file manager will either be able to cope with this or not, and that affects
all file access, whether it is the catalog or the table files.

<< Ok, but please add it into your wish list. >>

As always, will do. Smiley

--
Tim Young
Elevate Software
www.elevatesoft.com

Image