Project

General

Profile

Actions

Bug #183

closed

Port metacat to PostgresSQL and other databases

Added by Matt Jones about 23 years ago. Updated about 22 years ago.

Status:
Resolved
Priority:
Immediate
Assignee:
Owen Eddins
Category:
metacat
Target version:
Start date:
02/14/2001
Due date:
% Done:

0%

Estimated time:
Bugzilla-Id:
183

Description

To install Metacat broadly at research stations, we need to eliminate the
requirement for Oracle as a backend DB. Thus, we need to port Metacat so that
it can use PostgresSQL and probably MS SQL Server. To do this, we should create
a database interface class that implements the SQL calls needed for each
database system. At runtime, Metacat would then load the proper database
adapter (that implements the interface) and thus have access to the specific SQL
cals needed to access that database. The changes to Metacat involved in this
will mainly be limited to two classes (DocumentImpl.java and
QuerySpecification.java) as these are the main classes that execute SQL calls,
although there will also be some work needed in the AccessControlList.java,
DBDTDHandler, DBEntityResolver, DBSAXHandler, DBSAXNode, DBUtil,
ForceReplication and ReplicationHandler classes. Owen has agreed to work on this
as well.

Actions #1

Updated by Matt Jones about 23 years ago

John Harris has agreed to look into the use of an embedded database for portions
of metacat and the plots db client software, and so should work with Owen to
develop a suitable database abstraction interface that would work for the
embedded database situation as well as postgres and sql server.

Actions #2

Updated by Matt Jones about 23 years ago

At Santa Barbara meeting, agreed to create a generic database interface and a
series of adapters for each supported datbase type, including oracle, SQL
Server, PostgresSQL, Enhydra instantDB, etc.

Actions #3

Updated by Matt Jones almost 23 years ago

I noticed that new classes that implement this functionality were checked in (by
Jivka). I have some file naming suggestions. The current interface is called
"DBAdapter", when in Java-ese an "Adapter" is usually a specific implementation
of an interface. So here's what I suggest to rename the files:

DBAdapter.java --> AbstractDatabase.java
DBOracle.java --> OracleAdapter.java
DBPostgresql.java --> PostgresqlAdapter.java

What do you think?

Actions #4

Updated by Jivka Bojilova almost 23 years ago

DONE

Actions #5

Updated by Redmine Admin about 11 years ago

Original Bugzilla ID was 183

Actions

Also available in: Atom PDF