other users?
4.17) What is an OID? What is a TID?
4.18) What is the meaning of some of the terms used in PostgreSQL?
- 4.19) Why do I get the error "FATAL: palloc failure: memory
- exhausted?"
- 4.20) How do I tell what PostgreSQL version I am running?
- 4.21) My large-object operations get invalid large obj descriptor.
+ 4.19) How do I tell what PostgreSQL version I am running?
+ 4.20) My large-object operations get invalid large obj descriptor.
Why?
- 4.22) How do I create a column that will default to the current time?
- 4.23) Why are my subqueries using IN so slow?
- 4.24) How do I perform an outer join?
+ 4.21) How do I create a column that will default to the current time?
+ 4.22) Why are my subqueries using IN so slow?
+ 4.23) How do I perform an outer join?
Extending PostgreSQL
5.1) I wrote a user-defined function. When I run it in psql, why does
it dump core?
- 5.2) What does the message "NOTICE:PortalHeapMemoryFree: 0x402251d0
- not in alloc set!" mean?
- 5.3) How can I contribute some nifty new types and functions to
+ 5.2) How can I contribute some nifty new types and functions to
PostgreSQL?
- 5.4) How do I write a C function to return a tuple?
- 5.5) I have changed a source file. Why does the recompile not see the
+ 5.3) How do I write a C function to return a tuple?
+ 5.4) I have changed a source file. Why does the recompile not see the
change?
_________________________________________________________________
A list of general database terms can be found at:
http://www.comptechnews.com/~reaster/dbdesign.html
- 4.19) Why do I get the error "FATAL: palloc failure: memory exhausted?"
-
- It is possible you have run out of virtual memory on your system, or
- your kernel has a low limit for certain resources. Try this before
- starting the postmaster:
- ulimit -d 65536
- limit datasize 64m
-
- Depending on your shell, only one of these may succeed, but it will
- set your process data segment limit much higher and perhaps allow the
- query to complete. This command applies to the current process, and
- all subprocesses created after the command is run. If you are having a
- problem with the SQL client because the backend is returning too much
- data, try it before starting the client.
-
- 4.20) How do I tell what PostgreSQL version I am running?
+ 4.19) How do I tell what PostgreSQL version I am running?
From psql, type select version();
- 4.21) My large-object operations get invalid large obj descriptor. Why?
+ 4.20) My large-object operations get invalid large obj descriptor. Why?
You need to put BEGIN WORK and COMMIT around any use of a large object
handle, that is, surrounding lo_open ... lo_close.
If you are using a client interface like ODBC you may need to set
auto-commit off.
- 4.22) How do I create a column that will default to the current time?
+ 4.21) How do I create a column that will default to the current time?
Use now():
CREATE TABLE test (x int, modtime timestamp DEFAULT now() );
- 4.23) Why are my subqueries using IN so slow?
+ 4.22) Why are my subqueries using IN so slow?
Currently, we join subqueries to outer queries by sequentially
scanning the result of the subquery for each row of the outer query. A
We hope to fix this limitation in a future release.
- 4.24) How do I perform an outer join?
+ 4.23) How do I perform an outer join?
PostgreSQL 7.1 and later supports outer joins using the SQL standard
syntax. Here are two examples:
The problem could be a number of things. Try testing your user-defined
function in a stand-alone test program first.
- 5.2) What does the message "NOTICE:PortalHeapMemoryFree: 0x402251d0 not in
- alloc set!" mean?
-
- You are pfree'ing something that was not palloc'ed. Beware of mixing
- malloc/free and palloc/pfree.
-
- 5.3) How can I contribute some nifty new types and functions to PostgreSQL?
+ 5.2) How can I contribute some nifty new types and functions to PostgreSQL?
Send your extensions to the pgsql-hackers mailing list, and they will
eventually end up in the contrib/ subdirectory.
- 5.4) How do I write a C function to return a tuple?
+ 5.3) How do I write a C function to return a tuple?
This requires wizardry so extreme that the authors have never tried
it, though in principle it can be done.
- 5.5) I have changed a source file. Why does the recompile not see the
+ 5.4) I have changed a source file. Why does the recompile not see the
change?
The Makefiles do not have the proper dependencies for include files.
<SMALL>TID</SMALL>?<BR>
<A href="#4.18">4.18</A>) What is the meaning of some of the terms
used in PostgreSQL?<BR>
- <A href="#4.19">4.19</A>) Why do I get the error <I>"FATAL: palloc
- failure: memory exhausted?"</I><BR>
- <A href="#4.20">4.20</A>) How do I tell what PostgreSQL version I
+ <A href="#4.19">4.19</A>) How do I tell what PostgreSQL version I
am running? <BR>
- <A href="#4.21">4.21</A>) My large-object operations get
+ <A href="#4.20">4.20</A>) My large-object operations get
<I>invalid large obj descriptor.</I> Why?<BR>
- <A href="#4.22">4.22</A>) How do I create a column that will
+ <A href="#4.21">4.21</A>) How do I create a column that will
default to the current time?<BR>
- <A href="#4.23">4.23</A>) Why are my subqueries using
+ <A href="#4.22">4.22</A>) Why are my subqueries using
<CODE><SMALL>IN</SMALL></CODE> so slow?<BR>
- <A href="#4.24">4.24</A>) How do I perform an outer join?<BR>
+ <A href="#4.23">4.23</A>) How do I perform an outer join?<BR>
<CENTER>
</CENTER>
<A href="#5.1">5.1</A>) I wrote a user-defined function. When I run
it in <I>psql,</I> why does it dump core?<BR>
- <A href="#5.2">5.2</A>) What does the message
- <I>"NOTICE:PortalHeapMemoryFree: 0x402251d0 not in alloc set!"</I>
- mean?<BR>
- <A href="#5.3">5.3</A>) How can I contribute some nifty new types
+ <A href="#5.2">5.2</A>) How can I contribute some nifty new types
and functions to PostgreSQL?<BR>
- <A href="#5.4">5.4</A>) How do I write a C function to return a
+ <A href="#5.3">5.3</A>) How do I write a C function to return a
tuple?<BR>
- <A href="#5.5">5.5</A>) I have changed a source file. Why does the
+ <A href="#5.4">5.4</A>) I have changed a source file. Why does the
recompile not see the change?<BR>
<HR>
<P>A list of general database terms can be found at: <A href=
"http://www.comptechnews.com/~reaster/dbdesign.html">http://www.comptechnews.com/~reaster/dbdesign.html</A></P>
- <H4><A name="4.19">4.19</A>) Why do I get the error <I>"FATAL:
- palloc failure: memory exhausted?"</I><BR>
- </H4>
-
- <P>It is possible you have run out of virtual memory on your
- system, or your kernel has a low limit for certain resources. Try
- this before starting the <I>postmaster:</I></P>
-<PRE>
- ulimit -d 65536
- limit datasize 64m
-</PRE>
- Depending on your shell, only one of these may succeed, but it will
- set your process data segment limit much higher and perhaps allow
- the query to complete. This command applies to the current process,
- and all subprocesses created after the command is run. If you are
- having a problem with the <SMALL>SQL</SMALL> client because the
- backend is returning too much data, try it before starting the
- client.
-
- <H4><A name="4.20">4.20</A>) How do I tell what PostgreSQL version
+ <H4><A name="4.19">4.19</A>) How do I tell what PostgreSQL version
I am running?<BR>
</H4>
<P>From <I>psql,</I> type <CODE>select version();</CODE></P>
- <H4><A name="4.21">4.21</A>) My large-object operations get
+ <H4><A name="4.20">4.20</A>) My large-object operations get
<I>invalid large obj descriptor.</I> Why?<BR>
</H4>
<P>If you are using a client interface like <SMALL>ODBC</SMALL> you
may need to set <CODE>auto-commit off.</CODE></P>
- <H4><A name="4.22">4.22</A>) How do I create a column that will
+ <H4><A name="4.21">4.21</A>) How do I create a column that will
default to the current time?<BR>
</H4>
</CODE>
</PRE>
- <H4><A name="4.23">4.23</A>) Why are my subqueries using
+ <H4><A name="4.22">4.22</A>) Why are my subqueries using
<CODE><SMALL>IN</SMALL></CODE> so slow?<BR>
</H4>
</PRE>
We hope to fix this limitation in a future release.
- <H4><A name="4.24">4.24</A>) How do I perform an outer join?<BR>
+ <H4><A name="4.23">4.23</A>) How do I perform an outer join?<BR>
</H4>
<P>PostgreSQL 7.1 and later supports outer joins using the SQL
<P>The problem could be a number of things. Try testing your
user-defined function in a stand-alone test program first.</P>
- <H4><A name="5.2">5.2</A>) What does the message
- <I>"NOTICE:PortalHeapMemoryFree: 0x402251d0 not in alloc set!"</I>
- mean?</H4>
-
- <P>You are <I>pfree'</I>ing something that was not
- <I>palloc'</I>ed. Beware of mixing <I>malloc/free</I> and
- <I>palloc/pfree.</I></P>
-
- <H4><A name="5.3">5.3</A>) How can I contribute some nifty new
+ <H4><A name="5.2">5.2</A>) How can I contribute some nifty new
types and functions to PostgreSQL?</H4>
<P>Send your extensions to the <I>pgsql-hackers</I> mailing list,
and they will eventually end up in the <I>contrib/</I>
subdirectory.</P>
- <H4><A name="5.4">5.4</A>) How do I write a C function to return a
+ <H4><A name="5.3">5.3</A>) How do I write a C function to return a
tuple?</H4>
<P>This requires wizardry so extreme that the authors have never
tried it, though in principle it can be done.</P>
- <H4><A name="5.5">5.5</A>) I have changed a source file. Why does
+ <H4><A name="5.4">5.4</A>) I have changed a source file. Why does
the recompile not see the change?</H4>
<P>The <I>Makefiles</I> do not have the proper dependencies for