[HACKERS] How to cache a non-unique index?

2009-12-07 Thread Xin Wang
Hi,

I have added a catalog table with an index on a non-unique column. I
want to cache this non-unique index like other unique indexes in
syscache. Is there any way to cache a non-unique index? I just want the
index to reside in the memory to speed up the index lookup. Thank you!

Wang


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


[HACKERS] Using a C++ library in PostgreSQL

2009-07-19 Thread Xin Wang
Hi all,
My research project is based on PostgreSQL. I want to get the
Post-Schema-Validation-Infoset (PSVI)
of an XML document being stored. However, the current libxml2 library does
not support PSVI at all. So
I have to use the Xerces C++ library in PostgreSQL. But I wonder if it is
possible to call a C++ API in
a C code base.
   Could anyone here give me some guidelines to do it? Can the recently
discussed Mostly Harmless C++
patch be helpful to what I want to do?

Thank you in advance!
Xin Wang


[HACKERS] Memory exhaustion during bulk insert

2009-04-14 Thread Xin Wang
Hi all,

I'm doing an experimental project using Postgres as the prototype.
I want to store attribute values of xml type in an internal XML table
which is created for every XML column. One XML node (element,
attribute or text) is stored as a tuple in the XML table. While
a 127MB XML document 'dblp.xml' (that has about 4 million XML nodes
thus 4 million tuples) is being stored, 2GB memory is exhausted rapidly
and then my computer hangs up. I guess the reason is that the memory
runs out before the transaction is committed because the number of
tuples being inserted is too large.

The flow of tuple insertion and functions called are as follows:

while (get the next XML node != NULL)
{
/* fill in values and isnull array */
...
tup = heap_form_tuple(tupleDesc, values, isnull);
simple_heap_insert(xmlTable, tup);
...
heap_freetuple(tup);
}

I searched the mailinglist archive and noticed that a patch to improve
bulk insert performance is committed in Nov 2008. The log message said

(the patch) keeps the current target buffer pinned and make it work
in a small ring of buffers to avoid having bulk inserts trash the whole
buffer arena.

However, I do not know much about the code below the heapam layer. Can that
patch solve my problem (the version I use is 8.3.5)? Or could you give me
some suggestion about how to avoid memory exhaustion during bulk insert
(in the meanwhile it must clean up nicely after a transaction abort)?

Thanks in advance.
Regards,

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


[HACKERS] How to implement an auto-increment column for a system catalog table?

2009-03-15 Thread Xin Wang
Hi all,
I am using Postgres to build the prototype in a research project. I need
to create a new system catalog table with an auto-increment column. For
a ordinary table, CREATE SEQUENCE or a serial type can be used to
implement the auto-increment column, but it seems Postgres do not
support creating a sequence or serial types in system catalogs. How to
implement an auto-increment column for a catalog table?

Thanks in advance.

Wang

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


[HACKERS] Where can I find the doxyfile?

2008-05-31 Thread Xin Wang
Hi,
I don't know where I can find the doxyfile which generate
doxygen.postgresql.org web site. I found that when reading code the
doxygen source code is quite helpful. However, I want to generate an
off-line copy of doxygen docs myself, but I can't find the doxyfile in
the lastest source release.
Thanks!

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers