Re: autovacuum ignore tables

Started by Sriram Dandapaniover 19 years ago5 messagesgeneral
Jump to latest
#1Sriram Dandapani
sdandapani@counterpane.com

I meant to say...rules are used on the parent table to redirect to
child. Just like the way the postgres 8.1 documentation has it.

-----Original Message-----
From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
Sent: Friday, September 29, 2006 2:48 PM
To: Sriram Dandapani
Cc: Matthew T. O'Connor; pgsql-admin@postgresql.org
Subject: Re: [ADMIN] autovacuum ignore tables

"Sriram Dandapani" <sdandapani@counterpane.com> writes:

The jdbc inserts go into the main parent table and check constraints
redirect them to child tables.

A check constraint can't redirect anything. Are you saying that you use
a trigger to try to insert the row into *each* child table, relying on
the constraints to make all except one insert fail? Ugh. You'd do a
lot better to duplicate the partitioning-rule knowledge in the trigger,
and do only one insert that should succeed --- no wasted cycles, and no
need for a subtransaction.

regards, tom lane

#2Archibald Zimonyi
arsi@aranzo.netg.se
In reply to: Sriram Dandapani (#1)
String handling function, substring vs. substr

Hi all,

I want to call one of the two functions above many times (in an aggregate
function) and it says in the manual pages that substr is the same as
substring.

Does this mean that substr calls substring internally?? Or is it the other
way around?? Or are they independent of each other??

So in short, which is faster to use??

Thanks,

Archie

#3brian
brian@zijn-digital.com
In reply to: Archibald Zimonyi (#2)
Re: String handling function, substring vs. substr

arsi@aranzo.netg.se wrote:

Hi all,

I want to call one of the two functions above many times (in an
aggregate function) and it says in the manual pages that substr is the
same as substring.

Does this mean that substr calls substring internally?? Or is it the
other way around?? Or are they independent of each other??

So in short, which is faster to use??

Thanks,

Archie

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

I normally trim the cruft from the end of emails i'm replying to but
this time it seemed like a good idea to leave it.

test=# EXPLAIN ANALYZE SELECT substring('foobar', 2);
QUERY PLAN
------------------------------------------------------------------------------------
Result (cost=0.00..0.01 rows=1 width=0) (actual time=0.011..0.013
rows=1 loops=1)
Total runtime: 0.042 ms
(2 rows)

test=# EXPLAIN ANALYZE SELECT substr('foobar', 2);
QUERY PLAN
------------------------------------------------------------------------------------
Result (cost=0.00..0.01 rows=1 width=0) (actual time=0.010..0.012
rows=1 loops=1)
Total runtime: 0.043 ms
(2 rows)

test=# EXPLAIN ANALYZE SELECT substring('foobar', 2);
QUERY PLAN
------------------------------------------------------------------------------------
Result (cost=0.00..0.01 rows=1 width=0) (actual time=0.012..0.014
rows=1 loops=1)
Total runtime: 0.044 ms
(2 rows)

test=# EXPLAIN ANALYZE SELECT substr('foobar', 2);
QUERY PLAN
------------------------------------------------------------------------------------
Result (cost=0.00..0.01 rows=1 width=0) (actual time=0.011..0.013
rows=1 loops=1)
Total runtime: 0.043 ms
(2 rows)

Looks like they're pretty evenly matched. I'd try it with something a
bit more complex. You could also prepare a file with the same queries
repeated amny times, using different words and positions. Do a file for
each function. Have psql dump its results into 2 other files and grep
for all the running times for each. Average them out and compare both
averages.

b

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: brian (#3)
Re: String handling function, substring vs. substr

brian <brian@zijn-digital.com> writes:

arsi@aranzo.netg.se wrote:

Does this mean that substr calls substring internally?? Or is it the
other way around?? Or are they independent of each other??

Looks like they're pretty evenly matched.

Actually, a bit of poking into the contents of pg_proc will show you
that they are both aliases for the same C function (text_substr_no_len).
So they should be *exactly* the same speed.

regards, tom lane

#5Archibald Zimonyi
arsi@aranzo.netg.se
In reply to: Tom Lane (#4)
Re: String handling function, substring vs. substr

Hi all,

brian <brian@zijn-digital.com> writes:

arsi@aranzo.netg.se wrote:

Does this mean that substr calls substring internally?? Or is it the
other way around?? Or are they independent of each other??

Looks like they're pretty evenly matched.

Actually, a bit of poking into the contents of pg_proc will show you
that they are both aliases for the same C function (text_substr_no_len).
So they should be *exactly* the same speed.

regards, tom lane

Thanks Brian for your answer (although that wasn't what I was looking for,
I was looking for Tom's answer).

Thanks Tom for your answer.

Archie