Обсуждение: More PostgreSQL+CORBA

Поиск
Список
Период
Сортировка

More PostgreSQL+CORBA

От
Michael Robinson
Дата:
CORBA in fifty words or less:    CORBA is an architecture which specifies how to:    - define the method signatures of
anobject type    - obtain a reference to a object instance    - invoke a method, with parameters, on an object instance
  - receive the results    - all interoperably between different programming languages, object      implementations,
andplatforms.  
 
Why CORBA?     If you don't do object-oriented programming and system design, the   rationale for CORBA will be hard to
understand. If you don't understand   why PostgreSQL is called an "object-relational" database (and why every   row has
anOID), the rationale for PostgreSQL+CORBA will be hard to   understand.     The short version goes like this:
Thinkof a database table as a "typedef" of a data structure, with each   row representing a malloc'ed instance of that
structuretype.  The   database provides for persistant storage, and concurrent data access,   but with a considerable
accessoverhead: sending an SQL query string down   a socket, parsing the query string into an execution plan, executing
 the plan, coverting the returned result set into text strings, sending   the strings down a socket, retrieving the
stringsfrom the socket, and,   finally, converting the text strings back into usable data values.     With CORBA,
though,you could keep a reference (OID, pointer, etc.) to   each data structure of interest, and just call a function
toread or    write data to fields in that structure.  Another way to think of it    is cursors without queries.  The
database(PostgreSQL in our case)   continues to maintain persistence and concurrent access, and the data   is also
alwaysavailable for relational queries.   
 
Which ORB?   GNOME started with Mico.  Mico, apparently, makes use of C++ templates,    which caused the compiler they
wereusing to generate bloated, wallowing    code.      GNOME then adopted ORBit, which has two wins: it's in C, and
(thisis   the biggy) it has provisions to shortcut parameter marshalling,   transmission, authentication, reception,
anddemarshalling--if the client   stub and server skeleton are in the same address space, and both stub   and skeleton
permitthis.
 
   This means that, with ORBit, CORBA method calls can be almost as   efficient as normal function calls.

How to use CORBA with PostgreSQL?
   There are three ways I can see this working:
   1. As a simple alternative for the current FE<->BE communication protocol.      The SQL query engine continues to
intermediateall transactions.  This      has some benefits, but is really boring to me.
 
   2. As an alternative to both the FE<->BE communication protocol and the      SQL query engine.  In this case,
programscould have efficient direct      row access, but all data transfers would still be shoved through a      socket
(viathe Internet Inter-Orb Protocol).  This could be useful,      and mildly interesting.
 
   3. As an alternative API to libpq that would allow, for example,      embedding a Python interpreter in the backend,
withPostgreSQL tables      exposed through CORBA as native Python classes, and with high      performance via ORBit
methodshortcutting.  This, in my opinion,      would be the most useful and interesting.
 

    -Michael Robinson



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Michael Robinson wrote:

< a very well written description removed >

> Which ORB?
>  
>     GNOME started with Mico.  Mico, apparently, makes use of C++ templates, 
>     which caused the compiler they were using to generate bloated, wallowing 
>     code.
Is that still accurate today?

>     GNOME then adopted ORBit, which has two wins: it's in C, and (this is
>     the biggy) it has provisions to shortcut parameter marshalling,
So...implement an OO 'environment' with a non-OO language? :)
My experience is that for pretty much every pro, there is a
con...what are we losing with ORBit that we'd have with mico?  Short
and/or long term?  mico is reputed to be Corba 2.2 compliant..orbit?

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
Tom Lane
Дата:
Michael Robinson <robinson@public.bta.net.cn> writes:
> [ pithy summary of CORBA snipped --- thanks, Michael! ]

>  There are three ways I can see this working:

>  1. As a simple alternative for the current FE<->BE communication protocol.
>     The SQL query engine continues to intermediate all transactions.  This
>     has some benefits, but is really boring to me.

I agree, that's not too exciting ... although replacing our current ad-hoc
FE/BE protocol with a standards-based protocol (I assume CORBA has a
recognized standard for the wire-level protocol?) might well be worth doing.

>  2. As an alternative to both the FE<->BE communication protocol and the
>     SQL query engine.  In this case, programs could have efficient direct
>     row access, but all data transfers would still be shoved through a
>     socket (via the Internet Inter-Orb Protocol).  This could be useful,
>     and mildly interesting.

Actually, I find that one Extremely Useful and indeed Fascinating ;-).
In the applications I'm currently using, a large fraction of the
update queries act on single rows and have the formUPDATE table SET field(s) WHERE oid = 123456;
The overhead of doing this is horrendous, of course.  Being able to
access individual rows as if they were CORBA objects would be a lovely
performance improvement, I suspect.

>  3. As an alternative API to libpq that would allow, for example,
>     embedding a Python interpreter in the backend, with PostgreSQL tables
>     exposed through CORBA as native Python classes, and with high
>     performance via ORBit method shortcutting.  This, in my opinion,
>     would be the most useful and interesting.

I'm leery of this, not only because of the implementation problems other
people have mentioned (bringing the backend to a state where it is
thread-safe would be a large effort), but because it subverts all the
protection and security reasons for having the Postgres frontend/backend
architecture in the first place.  The *last* thing I'd want is client
code executing in the same process as the database server.

However, if I understand things correctly, the CORBA interface will hide
whether client code is in the same process as the backend server or not;
so we could each assemble the parts in the way we prefer.  At least, I
could build my separate-processes setup right away, and we could work
towards making the backend thread-safe so you could build your
installation your way.

Does CORBA have any provision for saying "this object is not thread
safe, don't send it concurrent operations"?  If there's something along
that line, then maybe we don't have to fix the backend before it can
live in a common address space with the client...
        regards, tom lane


Re: [HACKERS] More PostgreSQL+CORBA

От
"Thomas G. Lockhart"
Дата:
> >  1. simple alternative for the current FE<->BE communication 
> >     protocol.
> ... although replacing our current ad-hoc
> FE/BE protocol with a standards-based protocol (I assume CORBA has a
> recognized standard for the wire-level protocol?) might well be worth 
> doing.

Corba does specify a wire-level protocol, and also several layers above
that, so we would get endian issues resolved as well as
security/encryption, authentication, etc. Also, it may (at least
partially) address the need for different client libraries for different
languages, since there are Corba bindings available for a bunch of
languages. Some of that is up to the package one chooses to use...
                  - Tom


Re: [HACKERS] More PostgreSQL+CORBA

От
Bruce Momjian
Дата:
> Michael Robinson <robinson@public.bta.net.cn> writes:
> > [ pithy summary of CORBA snipped --- thanks, Michael! ]
> 
> >  There are three ways I can see this working:
> 
> >  1. As a simple alternative for the current FE<->BE communication protocol.
> >     The SQL query engine continues to intermediate all transactions.  This
> >     has some benefits, but is really boring to me.
> 
> I agree, that's not too exciting ... although replacing our current ad-hoc
> FE/BE protocol with a standards-based protocol (I assume CORBA has a
> recognized standard for the wire-level protocol?) might well be worth doing.

Current FE/BE protocol seems pretty optimized to me, but you should know
the best.  Seems like a waste to try and get it to match some standard,
expecially if we can just create a module to do it on top of the
existing protocol.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Fri, 13 Nov 1998, Bruce Momjian wrote:

> > Michael Robinson <robinson@public.bta.net.cn> writes:
> > > [ pithy summary of CORBA snipped --- thanks, Michael! ]
> > 
> > >  There are three ways I can see this working:
> > 
> > >  1. As a simple alternative for the current FE<->BE communication protocol.
> > >     The SQL query engine continues to intermediate all transactions.  This
> > >     has some benefits, but is really boring to me.
> > 
> > I agree, that's not too exciting ... although replacing our current ad-hoc
> > FE/BE protocol with a standards-based protocol (I assume CORBA has a
> > recognized standard for the wire-level protocol?) might well be worth doing.
> 
> Current FE/BE protocol seems pretty optimized to me, but you should know
> the best.  Seems like a waste to try and get it to match some standard,
> expecially if we can just create a module to do it on top of the
> existing protocol.
Except...if I'm understanding even half of this correctly...by
implementing CORBA at the FE/BE level, this effectively eliminates the
need for *us* to maintain a seperate interface for each language we want
to support, since that is what one of CORBA's design goals is...
In fact, again, if I'm understanding this correctly, this could
potentially open us up to languages we currently don't support...?

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
Bruce Momjian
Дата:
>     Except...if I'm understanding even half of this correctly...by
> implementing CORBA at the FE/BE level, this effectively eliminates the
> need for *us* to maintain a seperate interface for each language we want
> to support, since that is what one of CORBA's design goals is...
> 
>     In fact, again, if I'm understanding this correctly, this could
> potentially open us up to languages we currently don't support...?

Yea, that would be neat.  But considering no one really totally supports
CORBA yet, and we already have tons of working interfaces, perhaps we
can consider it in the future, or were you thinking in the next 6-9
months?


--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Bruce Momjian wrote:

> >     Except...if I'm understanding even half of this correctly...by
> > implementing CORBA at the FE/BE level, this effectively eliminates the
> > need for *us* to maintain a seperate interface for each language we want
> > to support, since that is what one of CORBA's design goals is...
> > 
> >     In fact, again, if I'm understanding this correctly, this could
> > potentially open us up to languages we currently don't support...?
> 
> Yea, that would be neat.  But considering no one really totally supports
> CORBA yet, and we already have tons of working interfaces, perhaps we
> can consider it in the future, or were you thinking in the next 6-9
> months?
Guess that's the next question (vs statement)...who actually
supports Corba at this time?  two, off the top of my head, are Gnome and
Koffice...anyone know of a list of others?
As for 6-9 months...I think this is more in Michael court then
anything...I don't see why work can't start on it now, even if its nothing
more then Michael submitting patches that have the relevant sections
#ifdef's so that they are only enabled for those working on it.  I don't
imagine this is going to be a "now it isn't, now it is" sort of thing...it
might take 6-9 months to implement...

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
Bruce Momjian
Дата:
> >     Except...if I'm understanding even half of this correctly...by
> > implementing CORBA at the FE/BE level, this effectively eliminates the
> > need for *us* to maintain a seperate interface for each language we want
> > to support, since that is what one of CORBA's design goals is...
> > 
> >     In fact, again, if I'm understanding this correctly, this could
> > potentially open us up to languages we currently don't support...?
> 
> Yea, that would be neat.  But considering no one really totally supports
> CORBA yet, and we already have tons of working interfaces, perhaps we
> can consider it in the future, or were you thinking in the next 6-9
> months?

I think I get it now.  Currently, all the non-C interfaces use libpq to
go over the wire to the backend.  If we made the FE/BE protocol CORBA, we
could modify libpq, and all the current interfaces would still work. 
Then if someone came up with a Smalltalk-to-CORBA interface, they could
use it for PostgreSQL.  Also, if someone came up with a better
Perl-to-CORBA interface, we could throw ours away, and just use that
one.
Would nice.  Hope there is no performance penalty.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] More PostgreSQL+CORBA

От
Tom Lane
Дата:
Bruce Momjian <maillist@candle.pha.pa.us> writes:
> Yea, that would be neat.  But considering no one really totally supports
> CORBA yet, and we already have tons of working interfaces, perhaps we
> can consider it in the future, or were you thinking in the next 6-9
> months?

I'm not sure what Michael was thinking, but I was seeing this as a
long-term kind of project.  Maybe for the release after 6.5, or even
the one after that.  (Do we have any definite plans for future release
frequency?)

Even if the open-source ORBs are adequately up-to-speed today (which
sounded iffy), we need to learn about CORBA, or import some expertise
from somewhere, before we can do much.  This is unknown territory for
me, and evidently also for most of the pgsql crew.  I'd be inclined to
just play around for a few months and try to write a paper design.

It does sound like an idea worth pursuing, though.
        regards, tom lane


Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Fri, Nov 13, 1998 at 01:39:17PM -0400, The Hermit Hacker wrote:
> >     GNOME started with Mico.  Mico, apparently, makes use of C++ templates, 
> >     which caused the compiler they were using to generate bloated, wallowing 
> >     code.
> 
>     Is that still accurate today?

I think so, yes.

> >     GNOME then adopted ORBit, which has two wins: it's in C, and (this is
> >     the biggy) it has provisions to shortcut parameter marshalling,
> 
>     So...implement an OO 'environment' with a non-OO language? :)
> 
>     My experience is that for pretty much every pro, there is a
> con...what are we losing with ORBit that we'd have with mico?  Short
> and/or long term?  mico is reputed to be Corba 2.2 compliant..orbit?

In the short term we lose lots of functions with ORBit. In the long run
however we win performance. 

Michael
-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
Hannu Krosing
Дата:
Bruce Momjian wrote:
> 
> Current FE/BE protocol seems pretty optimized to me, but you should know
> the best.  Seems like a waste to try and get it to match some standard,
> expecially if we can just create a module to do it on top of the
> existing protocol.
> 

It may be pretty optimized, but in its current implementation it seems 
it has just evolved into the current shape, and not engineered to be 
a efficient and consistent interface.

The way it has become as it is seems to be grown from the need to 
talk to the backend directly using telnet. 

Otherways the protocol is a bitch to implement (comared for example to
X)
as it is very inconsistent in ways lengths are specified, and also lacks 
many features needed from standard SQL CLI spec, like prepared 
statements and such; (Implementing prepared statements on top of 
current protocol would need quite a lot of gum, wire and black tape)

The binary protocol is very much lacking (read unimplemented) - there 
are places for network input/output functions in the pg_type table, 
(I guess typsend/typreceive were ment to be used in binary mode 
cursors) but they are not used (they are always the same as 
typoutput/typsend)

having really standard network independent binary representations 
(using typsend/typreceive) for all types would be one thing to ease 
implementation of higher-level client libraries (ODBC,JDBC,...)

Currently everything goes through ascii as it is the only 
architecture and network independent way.

I have been entertaining an idea to design a new protocol based on 
X Window protocol, but probably the CORBA one (GIOP ?) is more advanced, 
at least in fields like security, marshalling of new user-defined 
datatypes and others. It does probably not suffer from arbitrary 8k 
limits in unexpected places ;)

So, as we will need a new FE<->BE protocol anyway, why not try to 
use CORBA.

-------------
Hannu Krosing


Re: [HACKERS] More PostgreSQL+CORBA

От
Hannu Krosing
Дата:
Bruce Momjian wrote:
>
> > Yea, that would be neat.  But considering no one really totally supports
> > CORBA yet, and we already have tons of working interfaces, perhaps we
> > can consider it in the future, or were you thinking in the next 6-9
> > months?
> 
> I think I get it now.  Currently, all the non-C interfaces use libpq to
> go over the wire to the backend.

AFAIK, many of them (ODBC,tcl(the portable one),JDBC) speak native
wire-protocol.

> If we made the FE/BE protocol CORBA, we
> could modify libpq, and all the current interfaces would still work.
> Then if someone came up with a Smalltalk-to-CORBA interface, they could
> use it for PostgreSQL.  Also, if someone came up with a better
> Perl-to-CORBA interface, we could throw ours away, and just use that
> one.
> 
> Would nice.  Hope there is no performance penalty.

I don't know about it, it probably depends on which ORB we will use.

------------------
Hannu


Re: [HACKERS] More PostgreSQL+CORBA

От
Hannu Krosing
Дата:
Tom Lane wrote:
> 
> Bruce Momjian <maillist@candle.pha.pa.us> writes:
> > Yea, that would be neat.  But considering no one really totally supports
> > CORBA yet, and we already have tons of working interfaces, perhaps we
> > can consider it in the future, or were you thinking in the next 6-9
> > months?
> 
> I'm not sure what Michael was thinking, but I was seeing this as a
> long-term kind of project.  Maybe for the release after 6.5, or even
> the one after that.  (Do we have any definite plans for future release
> frequency?)
> 
> Even if the open-source ORBs are adequately up-to-speed today (which
> sounded iffy), we need to learn about CORBA, or import some expertise
> from somewhere, before we can do much.  This is unknown territory for
> me, and evidently also for most of the pgsql crew.  I'd be inclined to
> just play around for a few months and try to write a paper design.

Keep an eye on the SQL CLI specs (or ODBC/JDBC as they are quite
similar)
when doing the design. 

> It does sound like an idea worth pursuing, though.

Indeed.

---------------
Hannu


Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Sat, Nov 14, 1998 at 02:34:04AM -0500, Bruce Momjian wrote:
> Yea, that would be neat.  But considering no one really totally supports
> CORBA yet, and we already have tons of working interfaces, perhaps we
> can consider it in the future, or were you thinking in the next 6-9
> months?

I'd say start woking now. But when it will be ready is up in the air. And
hey why shouldn't we be the first?

Michael
-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Sat, Nov 14, 1998 at 10:19:17AM -0400, The Hermit Hacker wrote:
> supports Corba at this time?  two, off the top of my head, are Gnome and
> Koffice...anyone know of a list of others?

Koffice? Is there anything like this yet? I know they are planning for it.
Or did you mean KDE? Do they use an ORB? Which one?

Michael
-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
Bruce Momjian
Дата:
> Bruce Momjian wrote:
> >
> > > Yea, that would be neat.  But considering no one really totally supports
> > > CORBA yet, and we already have tons of working interfaces, perhaps we
> > > can consider it in the future, or were you thinking in the next 6-9
> > > months?
> > 
> > I think I get it now.  Currently, all the non-C interfaces use libpq to
> > go over the wire to the backend.
> 
> AFAIK, many of them (ODBC,tcl(the portable one),JDBC) speak native
> wire-protocol.

Oops, I forgot about those.


--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] More PostgreSQL+CORBA

От
Taral
Дата:
On Sat, 14 Nov 1998, Michael Meskes wrote:

> I'd say start woking now. But when it will be ready is up in the air. And
> hey why shouldn't we be the first?
> 
> Michael

I *like* that attitude! I'm researching CORBA now, to see if ORBit is
sufficient for our needs.

Taral



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Michael Meskes wrote:

> On Fri, Nov 13, 1998 at 01:39:17PM -0400, The Hermit Hacker wrote:
> > >     GNOME started with Mico.  Mico, apparently, makes use of C++ templates, 
> > >     which caused the compiler they were using to generate bloated, wallowing 
> > >     code.
> > 
> >     Is that still accurate today?
> 
> I think so, yes.
> 
> > >     GNOME then adopted ORBit, which has two wins: it's in C, and (this is
> > >     the biggy) it has provisions to shortcut parameter marshalling,
> > 
> >     So...implement an OO 'environment' with a non-OO language? :)
> > 
> >     My experience is that for pretty much every pro, there is a
> > con...what are we losing with ORBit that we'd have with mico?  Short
> > and/or long term?  mico is reputed to be Corba 2.2 compliant..orbit?
> 
> In the short term we lose lots of functions with ORBit. In the long run
> however we win performance. 
I was talking with a friend of mine down here, that I was *hoping*
would have posted by now since I really really hate translating what
someone else said, but...
We should be able to create a 'mapping' include file, like we've
done in other places, that maps one 'corba' implementations functions to
our own, so that which implementation (OMNIorb, ORBit, MICO, etc) someone
uses is up to them.
For instance, I already have MICO installed because of
koffice...I'd prefer not to have to install *another* one because I want
to use it for PostgreSQL.
My thought, at this point in time, is that this should be
implemented initially in mico, since ORBit is missing 857+ 'methods'(?)
... but program it generic enough that by a simple #ifdef in a single
include file, it can be extended to any of the other ones as desired...
...basically, don't lock us down to one implementation...

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Bruce Momjian wrote:

> > >     Except...if I'm understanding even half of this correctly...by
> > > implementing CORBA at the FE/BE level, this effectively eliminates the
> > > need for *us* to maintain a seperate interface for each language we want
> > > to support, since that is what one of CORBA's design goals is...
> > > 
> > >     In fact, again, if I'm understanding this correctly, this could
> > > potentially open us up to languages we currently don't support...?
> > 
> > Yea, that would be neat.  But considering no one really totally supports
> > CORBA yet, and we already have tons of working interfaces, perhaps we
> > can consider it in the future, or were you thinking in the next 6-9
> > months?
> 
> I think I get it now.  Currently, all the non-C interfaces use libpq to
> go over the wire to the backend.  If we made the FE/BE protocol CORBA, we
> could modify libpq, and all the current interfaces would still work. 
> Then if someone came up with a Smalltalk-to-CORBA interface, they could
> use it for PostgreSQL.  Also, if someone came up with a better
> Perl-to-CORBA interface, we could throw ours away, and just use that
> one.
Ya, was talking to Duane today (he's out there somewhere...just
shy or something *grin*) ... he said there is, get this, a COBOL-to-Corba
interface... :)
It basically opens us up to more languages supported without
having to actually support them :)

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Michael Meskes wrote:

> On Sat, Nov 14, 1998 at 02:34:04AM -0500, Bruce Momjian wrote:
> > Yea, that would be neat.  But considering no one really totally supports
> > CORBA yet, and we already have tons of working interfaces, perhaps we
> > can consider it in the future, or were you thinking in the next 6-9
> > months?
> 
> I'd say start woking now. But when it will be ready is up in the air. And
> hey why shouldn't we be the first?
We weren't sure over here, but does Oracle support ORBs?

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Michael Meskes wrote:

> On Sat, Nov 14, 1998 at 10:19:17AM -0400, The Hermit Hacker wrote:
> > supports Corba at this time?  two, off the top of my head, are Gnome and
> > Koffice...anyone know of a list of others?
> 
> Koffice? Is there anything like this yet? I know they are planning for it.
> Or did you mean KDE? Do they use an ORB? Which one?
Koffice is in alpha stages right now, screen shots look good...I
just finally got a clean compile of mico under FreeBSD, so next is to get
koffice done up too...
And, yes, they use an orb...mico, in particular :)
Check out koffice.kde.org...looks promising...

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Taral wrote:

> On Sat, 14 Nov 1998, Michael Meskes wrote:
> 
> > I'd say start woking now. But when it will be ready is up in the air. And
> > hey why shouldn't we be the first?
> > 
> > Michael
> 
> I *like* that attitude! I'm researching CORBA now, to see if ORBit is
> sufficient for our needs.

Taral...
I'm putting *one* condition on all this...any code added to C
files *must* be of the sort that is generic enough that someone can decide
upon installation which implementation they want to use.  For this, you
will need to do a corba.h file that contains:

#ifdef USING_MICO
#define ...   ...
#elif USING_ORBIT
#define ... ...
#endif
I don't care if what you guys are working on only has ORBit stuff
in the corba.h file, but I (or anyone else) has to be able to modify that
one file in order for it to work with MICO also...or OMNIorb, or some
commercial product...
And, as I said before, there is no reason why any one of you has
to get a "working model" on your machine before starting to submit
patches.  That kills productivity from the standpoint that two ppl are
going to end up working on the same functionality, independent of each
other...
Feel free to submit code such that:

#ifdef ENABLE_CORBA<corba related stuff>
#else /* original method */<old style stuff>
#endif
Too easy to add a --enable-corba option to configure...but at
least this way everyone sees what and where everyone else is working.  In
the end, when it comes time to do it, we can strip that all out, but this
is looking like a fairly long term project, and with the ongoing changes
that go on in the code, getting the CORBA code in while all the other
changes are going on is a good thing in that it keeps code trees in
sync...

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
Todd Graham Lewis
Дата:
On Sat, 14 Nov 1998, The Hermit Hacker wrote:

>     We weren't sure over here, but does Oracle support ORBs?

They have their own (very good) ORB included with their Application
Server platform.

--
Todd Graham Lewis            32�49'N,83�36'W          (800) 719-4664, x2804
******Linux******         MindSpring Enterprises      tlewis@mindspring.net



Re: [HACKERS] More PostgreSQL+CORBA

От
Todd Graham Lewis
Дата:
On Sat, 14 Nov 1998, The Hermit Hacker wrote:

>     For instance, I already have MICO installed because of
> koffice...I'd prefer not to have to install *another* one because I want
> to use it for PostgreSQL.

If I may, I'd like to put in a plug for ORBit.  DISCLAIMER: I am the
GNOME FAQ maintainer.

The GNOME project abandoned MICO and began the ORBit project for two
main reasons: MICO is a memory hog, and MICO is pretty deeply C++-only.
We took a serious look at fixing these problems with MICO, but could not
see a way to solve them.  (I think that some of it had to do with MICO's
dependence on C++ templates, but I am not sure.  I only know of this
evaluation second-hand.)

The ORBit developers intend on ORBit being fast, compliant, and
multi-lingual.  They are right now working on C++ support so that our
KDE brothers can make use of ORBit and help us develop it.

Again, I am a GNOME partisan, but I really do think that ORBit is a
good choice and a reliable long-term investment.  I encourage the
PostgreSQL developers to consider it.

BTW, I've recently joined the hackers list.  I've used PostgreSQL for
over a year and just began another project using it.  I'll mostly be
lurking, but if I can be of help to any of you, then please feel free
to call on me.

--
Todd Graham Lewis            32�49'N,83�36'W          (800) 719-4664, x2804
******Linux******         MindSpring Enterprises      tlewis@mindspring.net



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Sat, 14 Nov 1998, Todd Graham Lewis wrote:

> On Sat, 14 Nov 1998, The Hermit Hacker wrote:
> 
> >     For instance, I already have MICO installed because of
> > koffice...I'd prefer not to have to install *another* one because I want
> > to use it for PostgreSQL.
> 
> If I may, I'd like to put in a plug for ORBit.  DISCLAIMER: I am the
> GNOME FAQ maintainer.
this isn't actually a voting process here...I don't want us locked
into one implementation.  there are ppl out there that would prefer to use
mico because it is already installed on their system for some reason or
another...there should be absolutely no reason why this can't be coded
generic enough that, through a simple switch when running configure, one
or the other can be used...no?

> Again, I am a GNOME partisan, but I really do think that ORBit is a
> good choice and a reliable long-term investment.  I encourage the
> PostgreSQL developers to consider it.
I would rather our implementatin be "non-partisan"...what happens
in a years time, or 6 months, when the "faults" in mico disappear, if they
do?  at least if we work at staying non-partisan as far as which
implementation is used, switching will be transparent...all of them will
already be supported.
Bear in mind that ORBit and MICO are free implementations...what
about the commercial ones out there?  Just like we tend to try and support
each OSs C compiler, I want us to stay non-partisan as far as any
"external tools" are concerned...
Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
Duane Currie
Дата:
> > > 
> > >     My experience is that for pretty much every pro, there is a
> > > con...what are we losing with ORBit that we'd have with mico?  Short
> > > and/or long term?  mico is reputed to be Corba 2.2 compliant..orbit?
> > 
> > In the short term we lose lots of functions with ORBit. In the long run
> > however we win performance. 
> 
>     I was talking with a friend of mine down here, that I was *hoping*
> would have posted by now since I really really hate translating what
> someone else said, but...

ok, ok, Marc... you've got me into it now... :)

I started thinking about that talking to Marc about the CORBA ORB issue.
GNOME wants ORBit, BSD'ers want mico, linux'ers want omniorb, etc...
(forgive any possible generalizations above)

Basically what I was saying to Marc is that the really ORB-dependent part
of CORBA is the IDL-to-<language> mappings.  The logic of the CORBA object
can be implemented as a normal object independent of the compiled stub.
Then, all that has to be done is to fill in the stubs with code that 
acts as an adaptor to the ORB-independent object.  That way porting to
another ORB should be trivial.  

Someone out there correct me if I'm wrong... :)

I do like the idea of using CORBA to access postgreSQL.  There is the
obvious advantage of not having to worry about porting libpg to every
system and language.  CORBA ORB vendors/developers can take care of that.  

What really makes me curious is what the object's interface will be...
Just a clone of libpg, or something more?...  I think someone earlier 
mentioned possibly doing things like directly referencing "objects."
I think that the use of CORBA could allow for much more functionality
than a classical SQL RDBMS interface.  I don't know that much about the
backend, but it could be interesting to throw some ideas back and forth
about what could be done with the interface.

I would personally prefer to have a more natural OO interface to 
the database, possibly expanding on the idea of being able to directly
reference objects (and hold the reference to them). 

Duane

--------------------------------------------
Duane Currie (dcurrie@sandman.acadiau.ca)
Unix System Administrator/Software Developer
Acadia Institute for Teaching and Technology
--------------------------------------------




RE: [HACKERS] More PostgreSQL+CORBA

От
"Taral"
Дата:
Hear ye! Hear ye!

I've just started stressing my brain on the CORBA 2 docs... It turns out
that CORBA will be completely compatible with the existing system.

postmaster will register a "method server" with the ORB (which is a separate
process in mico, at least). A "method server" is one which requires a
separate process for every method invocation. Which is basically what we do
now with our one-backend-per-connection system. At least until the backend
is thread-safe, we're stuck with it. When the backend is thread-safe, we can
switch to "unshared server" where we have one per database. :)

Taral

P.S. When will that corba-specific list be set up? I'm sure that well over
half of the list didn't care one bit about what I just said.



Re: [HACKERS] More PostgreSQL+CORBA

От
Jim Penny
Дата:
On Sat, Nov 14, 1998 at 10:38:34PM -0400, The Hermit Hacker wrote:
> On Sat, 14 Nov 1998, Todd Graham Lewis wrote:
> 
> > On Sat, 14 Nov 1998, The Hermit Hacker wrote:
> > 
> > >     For instance, I already have MICO installed because of
> > > koffice...I'd prefer not to have to install *another* one because I want
> > > to use it for PostgreSQL.
> > 
> > If I may, I'd like to put in a plug for ORBit.  DISCLAIMER: I am the
> > GNOME FAQ maintainer.
> 
>     this isn't actually a voting process here...I don't want us locked
> into one implementation.  there are ppl out there that would prefer to use
> mico because it is already installed on their system for some reason or
> another...there should be absolutely no reason why this can't be coded
> generic enough that, through a simple switch when running configure, one
> or the other can be used...no?

You may not want that, but you had better look again.  CORBA defines the
wire transactions very carefully.  It defines the API for invoking 
services very carefully.  It very carefully avoids defining client
initialization, memory layout, API, etc.  There is limited code 
portability.  Yes, conditional compilation will work, but it will be
a lot of effort, probably as much as maintaining a NT/Unix port.
Choose the first ORB carefully!  Internal APIs for service 
implementation is simillarly undefined.

> 
> > Again, I am a GNOME partisan, but I really do think that ORBit is a
> > good choice and a reliable long-term investment.  I encourage the
> > PostgreSQL developers to consider it.
> 
>     I would rather our implementatin be "non-partisan"...what happens
> in a years time, or 6 months, when the "faults" in mico disappear, if they
> do?  at least if we work at staying non-partisan as far as which
> implementation is used, switching will be transparent...all of them will
> already be supported.
> 

Personally I have trouble with both ORBit and MICO.  MICO is far too
memory intensive and SLOW.  Choosing MICO will be an enormous 
performance hit.

I worry about ORBit because I think that  GNOME has seriously 
underestimated the amount of work involved in implementing anORB, not to mention the services.  

If you are going to do this, look carefully before you leap.
At least look at  ORBit, OmniORB2, ACE+TAO, ilu.  Drop MICO
as the performance will simply be too bad.

>     Bear in mind that ORBit and MICO are free implementations...what
> about the commercial ones out there?  Just like we tend to try and support
> each OSs C compiler, I want us to stay non-partisan as far as any
> "external tools" are concerned...
> 

Great ideal, but as CORBA lacks this level of source compatibility,
you can't get there.

>  Marc G. Fournier                                
> Systems Administrator @ hub.org 
> primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 
> 
> 


Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Sat, Nov 14, 1998 at 09:57:18PM -0400, The Hermit Hacker wrote:
>     Koffice is in alpha stages right now, screen shots look good...I
> just finally got a clean compile of mico under FreeBSD, so next is to get
> koffice done up too...

So what software do they use? In particular of course I'd like to know
whether they use PostgreSQL as DB backend.

>     And, yes, they use an orb...mico, in particular :)

But mico isn't used for the complete KDE system (/or is it?), whereas Gnome
uses its ORB almost everywhere it seems.

Michael

-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Sat, Nov 14, 1998 at 09:49:48PM -0400, The Hermit Hacker wrote:
>     For instance, I already have MICO installed because of
> koffice...I'd prefer not to have to install *another* one because I want
> to use it for PostgreSQL.

Hey Marc, this shouldn't be the reason to decide which ORB to use. I do like
however to allow to use every ORB you like.

Michael

[Still posted to hackers as I'm not sure I'm subscribed to interfaces. Will
check that later.]
-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Mon, 16 Nov 1998, Michael Meskes wrote:

> On Sat, Nov 14, 1998 at 09:49:48PM -0400, The Hermit Hacker wrote:
> >     For instance, I already have MICO installed because of
> > koffice...I'd prefer not to have to install *another* one because I want
> > to use it for PostgreSQL.
> 
> Hey Marc, this shouldn't be the reason to decide which ORB to use. I do like
> however to allow to use every ORB you like.
Was just an example...*roll eyes* *grin*

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Mon, 16 Nov 1998, Michael Meskes wrote:

> On Sat, Nov 14, 1998 at 09:57:18PM -0400, The Hermit Hacker wrote:
> >     Koffice is in alpha stages right now, screen shots look good...I
> > just finally got a clean compile of mico under FreeBSD, so next is to get
> > koffice done up too...
> 
> So what software do they use? In particular of course I'd like to know
> whether they use PostgreSQL as DB backend.
None, right now...I could be wrong though, haven't been able to
get it up and running yet :(

> >     And, yes, they use an orb...mico, in particular :)
> 
> But mico isn't used for the complete KDE system (/or is it?), whereas Gnome
> uses its ORB almost everywhere it seems.
From what Taral has investigatd and come up with, if we stick with
a 2.2 implementation of Corba (mico is only free implementation, that I am
aware of, tha tis fully 2.2 compliant...the rest are all 2.0 still), then
when the other ORBs, when they come up to speed (if?), making it workk
with them should be relatively easy.
According to what Taral has found out so far, 2.2's API is very
rigidly defined, whereas 2.0''s is left up to the implementator...
The end result I'd like to see if for PostgreSQL to be able to be
compiled against whatever implementation the installer wishes, as long as
they are 2.2 compliant...
Quite frankly, I want the *core* to be built around a complete
implementation...if someone is really hot on ORBit, and wants to add in
compatibility code so that it will work with ORBit, so bit it...but I want
the *core* to be 2.2 clean/compliant...and mico is the only ORB out there
at this point in time that will allow that...Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
"Thomas G. Lockhart"
Дата:
> I *like* that attitude! I'm researching CORBA now, to see if ORBit is
> sufficient for our needs.

Please look at ILU too... Predates CORBA, but has CORBA compatibility
and lots of history/development. afaik ORBit doesn't have broad
multi-language support, but I suppose we could use ILU for clients and
ORBit for the backend server, which is already C.
                - Tom


Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Mon, Nov 16, 1998 at 03:42:45PM -0400, The Hermit Hacker wrote:
>     From what Taral has investigatd and come up with, if we stick with
> a 2.2 implementation of Corba (mico is only free implementation, that I am
> aware of, tha tis fully 2.2 compliant...the rest are all 2.0 still), then
> when the other ORBs, when they come up to speed (if?), making it workk
> with them should be relatively easy.

I agree that we should go with 2.2.

>     The end result I'd like to see if for PostgreSQL to be able to be
> compiled against whatever implementation the installer wishes, as long as
> they are 2.2 compliant...

Yes.

>     Quite frankly, I want the *core* to be built around a complete
> implementation...if someone is really hot on ORBit, and wants to add in
> compatibility code so that it will work with ORBit, so bit it...but I want
> the *core* to be 2.2 clean/compliant...and mico is the only ORB out there
> at this point in time that will allow that...

I still think eventually PostgreSQL win run on ORBit on most systems. :-)

Michael

-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Tue, 17 Nov 1998, Michael Meskes wrote:

> On Mon, Nov 16, 1998 at 03:42:45PM -0400, The Hermit Hacker wrote:
> >     From what Taral has investigatd and come up with, if we stick with
> > a 2.2 implementation of Corba (mico is only free implementation, that I am
> > aware of, tha tis fully 2.2 compliant...the rest are all 2.0 still), then
> > when the other ORBs, when they come up to speed (if?), making it workk
> > with them should be relatively easy.
> 
> I agree that we should go with 2.2.
> 
> >     The end result I'd like to see if for PostgreSQL to be able to be
> > compiled against whatever implementation the installer wishes, as long as
> > they are 2.2 compliant...
> 
> Yes.
> 
> >     Quite frankly, I want the *core* to be built around a complete
> > implementation...if someone is really hot on ORBit, and wants to add in
> > compatibility code so that it will work with ORBit, so bit it...but I want
> > the *core* to be 2.2 clean/compliant...and mico is the only ORB out there
> > at this point in time that will allow that...
> 
> I still think eventually PostgreSQL win run on ORBit on most systems. :-)
> 
Possibly...which makes a few assumption though...1st is that ORBit
ever catches up to mico and 2 that mico doesn't speed up as it matures :)
Personally, the only thing that I care about is that *we* aren't
the ones that are scrambling to catch up to the 2.2 standard...we have a
clean (albeit slow) solution to work with now, let the other
implementations catch up to that...
Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
The Hermit Hacker
Дата:
On Tue, 17 Nov 1998, Michael Meskes wrote:

> >     Quite frankly, I want the *core* to be built around a complete
> > implementation...if someone is really hot on ORBit, and wants to add in
> > compatibility code so that it will work with ORBit, so bit it...but I want
> > the *core* to be 2.2 clean/compliant...and mico is the only ORB out there
> > at this point in time that will allow that...
> 
> I still think eventually PostgreSQL win run on ORBit on most systems. :-)
Appendum...why do you use PostgreSQL?  Speed or features? :)
ORBit is to MICO as MSQL is to POstgreSQL :)

Marc G. Fournier                                
Systems Administrator @ hub.org 
primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org 



Re: [HACKERS] More PostgreSQL+CORBA

От
dg@informix.com (David Gould)
Дата:
Marc G. Fournier writes:
> On Tue, 17 Nov 1998, Michael Meskes wrote:
> 
> > >     Quite frankly, I want the *core* to be built around a complete
> > > implementation...if someone is really hot on ORBit, and wants to add in
> > > compatibility code so that it will work with ORBit, so bit it...but I want
> > > the *core* to be 2.2 clean/compliant...and mico is the only ORB out there
> > > at this point in time that will allow that...
> > 
> > I still think eventually PostgreSQL win run on ORBit on most systems. :-)
> 
>     Appendum...why do you use PostgreSQL?  Speed or features? :)
> 
>     ORBit is to MICO as MSQL is to POstgreSQL :)
> 

Ok, but I think the other sense of the question is even more interesting:
  why do people use MSQL instead of PostgreSQL?

My point is that while pg beats msql hands down on features, speed is 
important enough to a lot of users that they choose msql instead. If we
had more speed, we would have even more success than we do now.

-dg

David Gould            dg@informix.com           510.628.3783 or 510.305.9468 
Informix Software  (No, really)         300 Lakeside Drive  Oakland, CA 94612
The irony is that Bill Gates claims to be making a stable operating
system and Linus Torvalds claims to be trying to take over the world.


Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Tue, Nov 17, 1998 at 09:23:58AM -0400, The Hermit Hacker wrote:
>     Possibly...which makes a few assumption though...1st is that ORBit
> ever catches up to mico and 2 that mico doesn't speed up as it matures :)

Right. These assumptions are made on a) Mico was thought to be an
educational project and b) ORBit has the financial backing of RedHat.

But of course I might be wrong. :-)

>     Personally, the only thing that I care about is that *we* aren't
> the ones that are scrambling to catch up to the 2.2 standard...we have a
> clean (albeit slow) solution to work with now, let the other
> implementations catch up to that...

Totally agreed.

Michael
-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!




Re: [HACKERS] More PostgreSQL+CORBA

От
Michael Meskes
Дата:
On Tue, Nov 17, 1998 at 09:25:10AM -0400, The Hermit Hacker wrote:
>     Appendum...why do you use PostgreSQL?  Speed or features? :)

Both! :-)

>     ORBit is to MICO as MSQL is to POstgreSQL :)

I would think PostgreSQL is better than MICO in their respective area. :-)

Michael
-- 
Dr. Michael Meskes, Manager of the Western Branch Office, Datenrevision GmbH
work: Cuxhavener Str. 36, D-21149 Hamburg
home: Th.-Heuss-Str. 61,  D-41812 Erkelenz, Michael.Meskes@usa.net
Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!