🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: borland.public.jdatastore
2 messages
2 total messages Started by Brenton Camac Thu, 01 Jun 2006 03:18
Q. Migrating a JDS DB from Windows to Linux
#53
Author: Brenton Camac
Date: Thu, 01 Jun 2006 03:18
34 lines
2348 bytes
I thought that because JDataStore was all Java, the process of migrating 
  a JDS database from windows to linux would be easy.  But it isn't. 
And so far, its impossible.

Here's the problem.
JDataStore keeps a record of the "A Log directory" - a fully qualified 
and non-empty directory name - embedded in the database.  Now if you try 
to open a database on linux that was created on windows, JDS reports:

   java.io.FileNotFoundException:
   /home/XXX/C:\YYY\databases/webDB_LOGA_ANCHOR (No such file or directory)

where XXX is the linux directory that the JVM was launched from and 
"C:\YYY\databases/webDB_LOGA_ANCHOR" is the where the jds log files 
reside on windows.

Ofcourse, this won't work as there is no C:\..... on the linux host.

So I tried to clear out the A Log Directory value.  But its wants 
something specified there, contrary to what the JDS documentation states 
that if the A Log Directory value is left blank, then the files are kept 
in the same directory as the JDataStore file.  Don't believe it!  If you 
change it to blank, then it does not change the field's value.

The end result is that JDS won't be able to open the database on the new 
platform because it is wrong about the location of where to find the log 
files.

Anyone ever tried to migrate a JDS database from windows to linux?  and 
in such a way as to retain the Transaction manager? (If turning off then 
TX mgr is the answer to this, then there isn't much point in using JDS 
as it ceases to be database at that point IMHO).

- Brenton
Re: Q. Migrating a JDS DB from Windows to Linux
#103
Author: Steve
Date: Fri, 02 Jun 2006 05:33
23 lines
1952 bytes
I'm not at my work computer right now.  But I can look into this tomorrow 
some more.

I assume that when you originally created the database that you specified a 
log directory.  If you do not need or want the log files in a separate 
directory, life is simpler if you don't set it.

I noticed that if you try to unset this from the JdsExplorer, it does not 
take affect.

The ui might be ignoring a blank field settng.  That's not good behavior. 
It might work programatically if you are familiar with the 
DataStoreConnection and TxManager components.  After opening the 
DataStoreConnection you can call getTxManager() and then try setting the log 
dir property to null while the DataStoreConnection is still open.  These are 
the same components that the JdsExplorer is using.

If this does not work you can create a new jds database that does not have 
the log dir explicitly set and then use the Tools |Copy Into Existing... 
dialog to copy the old database into the new database.  This should work, 
but not an ideal solution.

-Steve
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads