Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Technology Project and PMC » Porting Stellation
Porting Stellation [message #9858] Wed, 17 July 2002 13:36 Go to next message
Eclipse UserFriend
Originally posted by: kevinlewis.mailandnews.com

One thing I noticed when looking at the Stellation schema
( http://dev.eclipse.org/viewcvs/indextech.cgi/%7Echeckout%7E/ org.eclipse.ste
llation/docs/database-structure.html):

It seems to indicate that Stellation is using the PostgreSQL text type.
This is a wonderful type which allows text of arbitrary length. It's great
for things like ... well, storing source files.

I think it will be a pain to port this behavior to another database, since
very few have something like the text type (for example, neither Oracle or
DB/2 does). You can store text of arbitrary length, but you can't search
it.

This isn't a big deal to me, since I think PostgreSQL is a fine database--I
use it every day on Windows as a matter of fact. It's biggest drawback is
the lack of useful stored procedures with PL/pgSQL (I think it's called).

Anyway, I just wanted to mention this. This may not be an issue with some
of the other databases mentioned (for example HSQL has a similar text type).

--Kevin

BTW, why are the tables in the Stellation schema named like collections
instead of types?
Re: Porting Stellation [message #9881 is a reply to message #9858] Wed, 17 July 2002 15:25 Go to previous messageGo to next message
Mark C. Chu-Carroll is currently offline Mark C. Chu-CarrollFriend
Messages: 64
Registered: July 2009
Member
On Wed, 17 Jul 2002 09:36:53 -0400, Kevin Lewis wrote:

> One thing I noticed when looking at the Stellation schema
> ( http://dev.eclipse.org/viewcvs/indextech.cgi/%7Echeckout%7E/ org.eclipse.ste
> llation/docs/database-structure.html):
>
> It seems to indicate that Stellation is using the PostgreSQL text type.
> This is a wonderful type which allows text of arbitrary length. It's
> great for things like ... well, storing source files.

This actually shouldn't be a problem. Stellation uses text as an
equivalent for a VARCHAR(32K).

We don't store source files as single-chunk TEXTs. Stellation stores
source files in a table-based form called in-place delta (IPD). There are
TEXTs in the postgres version of the table used to store source files in
IPD form, but VARCHARs work equally well.

Even if we didn't use the IPD format, TEXTs wouldn't have worked for
storing files. In an earlier version of Stellation, we used CLOBs. The
problem is, while TEXTs are very attractive in theory, in practise, they
are *very* poorly supported by JDBC. So they don't, in fact, end up
working correctly. (This is only true for pure JDBC. They work wonderfully
if you're using the direct PostgreSQL APIs. But we didn't want to do that.


> I think it will be a pain to port this behavior to another database,
> since very few have something like the text type (for example, neither
> Oracle or DB/2 does). You can store text of arbitrary length, but you
> can't search it.
>
> This isn't a big deal to me, since I think PostgreSQL is a fine
> database--I use it every day on Windows as a matter of fact. It's
> biggest drawback is the lack of useful stored procedures with PL/pgSQL
> (I think it's called).

Frankly, I'm less than pleased with PostgreSQL. The JDBC implementation is
rather poor, and they've changed APIs on us in ways that break our code.
(For instance, in upgrading to 7.2, BLOBs stopped working in any
meaningful way with JDBC, and we had to switch to bytea's, which are a
poor substitute.) I really look forward to seeing the results of a port to
MySQL/InnoDB, and I'll happily spend a large chunk of time to help anyone
who wants to do it. (None of us in the IBM gang have time to do the whole
port ourselves, so we're hoping for a contributor to help.)

-Mark


--
Mark Craig Chu-Carroll, IBM T.J. Watson Research Center
*** The Stellation project: Advanced SCM for Collaboration
*** http://www.eclipse.org/stellation
*** Work Email: mcc@watson.ibm.com ------- Personal Email: markcc@bestweb.net
Re: Porting Stellation [message #31542 is a reply to message #9881] Thu, 17 October 2002 02:43 Go to previous message
Terence is currently offline TerenceFriend
Messages: 2
Registered: July 2009
Junior Member
Mark C. Chu-Carroll wrote:

> On Wed, 17 Jul 2002 09:36:53 -0400, Kevin Lewis wrote:
>>You can store text of arbitrary length, but you
>>can't search it.
>>

PG has an extension function whereby you can use XPath search in your
SQL expressions allowing you to search text in text fields (if they
contain XML).

This doesn't help much in this case, but it's a nice bit of trivia for
you :)

>>This isn't a big deal to me, since I think PostgreSQL is a fine
>>database--I use it every day on Windows as a matter of fact. It's
>>biggest drawback is the lack of useful stored procedures with PL/pgSQL
>>(I think it's called).
>
>
> Frankly, I'm less than pleased with PostgreSQL. The JDBC implementation is
> rather poor, and they've changed APIs on us in ways that break our code.
> (For instance, in upgrading to 7.2, BLOBs stopped working in any
> meaningful way with JDBC, and we had to switch to bytea's, which are a
> poor substitute.) I really look forward to seeing the results of a port to
> MySQL/InnoDB, and I'll happily spend a large chunk of time to help anyone
> who wants to do it. (None of us in the IBM gang have time to do the whole
> port ourselves, so we're hoping for a contributor to help.)
>

going from PG to mysql would definatly be a downgrade (unless you're
using the [perpetual] beta version of mysql4) because you lose basic
industry standard functionality like:
reference constraints
transactions
row-level locking
stored procedures, triggers
rules
checks
....

those are the ones off the top of my head. The JBoss project seem to
find it suitable as a default choice for J2EE.

Anyway, they are just some thoughts. To be honest, I don't even know
what Stellation is so I'll go away now :-]
Re: Porting Stellation [message #568934 is a reply to message #9858] Wed, 17 July 2002 15:25 Go to previous message
Mark C. Chu-Carroll is currently offline Mark C. Chu-CarrollFriend
Messages: 64
Registered: July 2009
Member
On Wed, 17 Jul 2002 09:36:53 -0400, Kevin Lewis wrote:

> One thing I noticed when looking at the Stellation schema
> ( http://dev.eclipse.org/viewcvs/indextech.cgi/%7Echeckout%7E/ org.eclipse.ste
> llation/docs/database-structure.html):
>
> It seems to indicate that Stellation is using the PostgreSQL text type.
> This is a wonderful type which allows text of arbitrary length. It's
> great for things like ... well, storing source files.

This actually shouldn't be a problem. Stellation uses text as an
equivalent for a VARCHAR(32K).

We don't store source files as single-chunk TEXTs. Stellation stores
source files in a table-based form called in-place delta (IPD). There are
TEXTs in the postgres version of the table used to store source files in
IPD form, but VARCHARs work equally well.

Even if we didn't use the IPD format, TEXTs wouldn't have worked for
storing files. In an earlier version of Stellation, we used CLOBs. The
problem is, while TEXTs are very attractive in theory, in practise, they
are *very* poorly supported by JDBC. So they don't, in fact, end up
working correctly. (This is only true for pure JDBC. They work wonderfully
if you're using the direct PostgreSQL APIs. But we didn't want to do that.


> I think it will be a pain to port this behavior to another database,
> since very few have something like the text type (for example, neither
> Oracle or DB/2 does). You can store text of arbitrary length, but you
> can't search it.
>
> This isn't a big deal to me, since I think PostgreSQL is a fine
> database--I use it every day on Windows as a matter of fact. It's
> biggest drawback is the lack of useful stored procedures with PL/pgSQL
> (I think it's called).

Frankly, I'm less than pleased with PostgreSQL. The JDBC implementation is
rather poor, and they've changed APIs on us in ways that break our code.
(For instance, in upgrading to 7.2, BLOBs stopped working in any
meaningful way with JDBC, and we had to switch to bytea's, which are a
poor substitute.) I really look forward to seeing the results of a port to
MySQL/InnoDB, and I'll happily spend a large chunk of time to help anyone
who wants to do it. (None of us in the IBM gang have time to do the whole
port ourselves, so we're hoping for a contributor to help.)

-Mark


--
Mark Craig Chu-Carroll, IBM T.J. Watson Research Center
*** The Stellation project: Advanced SCM for Collaboration
*** http://www.eclipse.org/stellation
*** Work Email: mcc@watson.ibm.com ------- Personal Email: markcc@bestweb.net
Re: Porting Stellation [message #584795 is a reply to message #9881] Thu, 17 October 2002 02:43 Go to previous message
Terence is currently offline TerenceFriend
Messages: 2
Registered: July 2009
Junior Member
Mark C. Chu-Carroll wrote:

> On Wed, 17 Jul 2002 09:36:53 -0400, Kevin Lewis wrote:
>>You can store text of arbitrary length, but you
>>can't search it.
>>

PG has an extension function whereby you can use XPath search in your
SQL expressions allowing you to search text in text fields (if they
contain XML).

This doesn't help much in this case, but it's a nice bit of trivia for
you :)

>>This isn't a big deal to me, since I think PostgreSQL is a fine
>>database--I use it every day on Windows as a matter of fact. It's
>>biggest drawback is the lack of useful stored procedures with PL/pgSQL
>>(I think it's called).
>
>
> Frankly, I'm less than pleased with PostgreSQL. The JDBC implementation is
> rather poor, and they've changed APIs on us in ways that break our code.
> (For instance, in upgrading to 7.2, BLOBs stopped working in any
> meaningful way with JDBC, and we had to switch to bytea's, which are a
> poor substitute.) I really look forward to seeing the results of a port to
> MySQL/InnoDB, and I'll happily spend a large chunk of time to help anyone
> who wants to do it. (None of us in the IBM gang have time to do the whole
> port ourselves, so we're hoping for a contributor to help.)
>

going from PG to mysql would definatly be a downgrade (unless you're
using the [perpetual] beta version of mysql4) because you lose basic
industry standard functionality like:
reference constraints
transactions
row-level locking
stored procedures, triggers
rules
checks
....

those are the ones off the top of my head. The JBoss project seem to
find it suitable as a default choice for J2EE.

Anyway, they are just some thoughts. To be honest, I don't even know
what Stellation is so I'll go away now :-]
Previous Topic:Eclipse and JUnit
Next Topic:Analogue JPanel for SWT?
Goto Forum:
  


Current Time: Sat Jul 27 04:41:38 GMT 2024

Powered by FUDForum. Page generated in 0.03887 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top