pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: David Hartwig <daveh@insightdist.com>
To: pgsql-interfaces <pgsql-interfaces@postgreSQL.org>
To: PostgreSQL-development <hackers@postgreSQL.org>
Cc: Byron Nikolaidis <byronn@insightdist.com>
Subject: New pg_type for large object
Date: Thu, 09 Apr 1998 18:54:24 -0400
Message-ID: <352D51A0.69CE8BB8@insightdist.com> (raw)

Greetings,

We are putting the finishing touches on some enhancements to the ODBC
driver.   One  feature, in particular, uses large objects to implement
OLE data types.   We are rather please with the way it is working.   Via
MS Access, we have been able to INSERT and SELECT objects, such as VISIO
drawings, Word Documents, and WAV sound clips.    However, we've run
into two problems.

The first is, that when we update the OID which points to the large
object, the large object is orphaned.  I realize that at the time of the
update, we could select the old OID and subsequently drop the large
object.  The problem is that general purpose tools such as MS Access do
not provide an clean framework for invoking such a query.
Specifically, UPDATE statements would have to be torn apart to build
such a SELECT statement.  In the short term I can build a separate
daemon to track down the orphans.   I hope VACUUM will eventually handle
these.

The second, and more difficult, problem is that there is no large object
data type.  When we gather table info in the driver we have no idea that
an OID may actually be a large object.   What we need is a large object
data type.  Furthermore, the data type must have a stable OID so the we
can recognize it when we gather table info.  We have tested the driver
by creating our own date type.  However, with the existing function
scoping of our driver, it is extremely difficult to dynamically locate a
user defined large object data type.    So for testing we have compiled
in our "lo" data type OID.

What I would like to know is, can a large object data type be added as
an internal data type?    The various "lo_" functions should eventually
be overloaded (or modified) to be able to use this data type.   But it
is not necessary at this time.  I believe this addition is a very low
risk change, and I would very much like to get to have it in the 6.3.2
release for distribution.   May I submit the patch, or would someone
kindly hack it in for us?

Great work!

Attachments:

vcard.vcf (text/x-vcard, 202B) download begin: vcard fn: David Hartwig n: Hartwig;David email;internet: daveh@insightdist.com x-mozilla-cpt: ;0 x-mozilla-html: FALSE version: 2.1 end: vcard

view thread (10+ messages)  latest in thread

Message-ID: <352D51A0.69CE8BB8@insightdist.com>
Permalink:  ../352D51A0.69CE8BB8@insightdist.com/
Also on:    postgresql.org/message-id/352D51A0.69CE8BB8@insightdist.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-interfaces@postgresql.org
  Cc: daveh@insightdist.com, hackers@postgreSQL.org, byronn@insightdist.com
  Subject: Re: New pg_type for large object
  In-Reply-To: <352D51A0.69CE8BB8@insightdist.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox