stamp_in
timestamptz_in
timetz_in
tintervalin
trigger_in
unknownin
uuid_in
varbit_in
varcharin
void_in
xidin
xml_in
(64 rows)
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 1: if postin
est get
an ORDER BY clause so that it will reliably pass on future versions?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
"Gregory Stark" <[EMAIL PROTECTED]> writes:
> "Tom Lane" <[EMAIL PROTECTED]> writes:
>
>> row-ordering discrepancy in rowtypes test|
>> 2007-02-10 03:00:02 | 3
>
> Is this because the test is fixed or unfix
data in a
place where you can access it in repeated invocations. It doesn't work
correctly if you call your function from two different places from a query. It
would take executor support for such state data structures to fix that
problem.
--
Gregory Stark
EnterpriseDB http://w
re available), this wouldn't introduce the usual multithreading
> headache...
Yes it would. Consider what happens if the PL function calls into SPI to
execute a query
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
.
But in my reading of nodeMergejoin so far it seems it keeps a reference to the
first tuple in a set, ie, the tuple it's going to mark. Not any tuple before
that.
Anyways, I just wanted to know if I was missing some other reason references
have to be valid for older tuples. Maybe I'
his includes all except
GIN.
The part I'm most worried about with both this and the equivalent bits for HOT
are maintaining the mapping from index to bit. I think it could be worked out,
but it has to be done carefully. Dropping an index can't ever change the
mapping and creating a new
power of ten we should just move the
decimal place and keep the same overall precision.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 3: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq
her to prohibit HOT updates (because the index is "too new")
b) whether to ignore HOT update chains when we use the index (because it's
"too new" and any HOT update chains predate it).
I fear it may imply that we have to keep performing cold updates until the
firs
we would go with xids.
> -----------
>
> Gregory Stark wrote:
>>
>> "Bruce Momjian" <[EMAIL PROTECTED]> writes:
>>
>> > We also add a boolean to pg_class to indicate no new HOT chains should be
>> > cr
only working with one document at a time it's usable. Much
faster than navigating separate web pages. I don't use it for the Postgres
docs which are reasonable to navigate in HTML, but for something like the SQL
spec where I want to be able to search through hundreds of pages and jump
aro
latter is quite effective.
Function pointers are notoriously hard to optimize around and can actually
make the surrounding code harder to optimize as well especially since we
compile with -fno-strict-aliasing. So whether it's faster or slower may depend
a lot on the specific call site.
--
idn't have plan invalidation... If you
dropped a constraint there was previously nothing to force the plan to be
recalculated if it depended on the constraint for correctness.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)-
"Martijn van Oosterhout" writes:
> On Sat, Mar 24, 2007 at 09:37:07PM +0000, Gregory Stark wrote:
>
>> It sounds like a fine idea from the point of view of flexibility. But as far
>> as faster... I guess it depends on how often HeapTupleSatisfiesVisibility is
&
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>> It sounds like a fine idea from the point of view of flexibility. But as far
>> as faster... I guess it depends on how often HeapTupleSatisfiesVisibility is
>> use
"Tom Lane" <[EMAIL PROTECTED]> writes:
> What's your point?
Apparently my point is that I should have checked the docs before assuming I
understood how this variable worked. I guess I've never needed to touch it
before.
--
Gregory Stark
EnterpriseDB
te
you enter when you're blocked waiting for your buffer to have free space MUST
be amongst the times you call CHECK_FOR_NOTIFICATIONS(). If you didn't plan to
have this local storage in the backend it would be difficult to guarantee that
clients would handle this situation correctly.
Per
I think it's particularly
interesting is writing regression tests -- especially to test HOT cases.
"Gregory Stark" <[EMAIL PROTECTED]> writes:
> I mentioned this a while back, now that 8.2 is out perhaps others will be more
> interested in new code.
>
> Currently Postgre
r they've finished working on it. Just
because they see further work that can be done is no reason not to commit
useful patches that are functional as they are.
In fact Postgres historically has had an even looser standard. If the code is
ready to be committed modulo bugs then it's been i
ta attached to some small
dynamic data your WAL and table bloats. Certainly you could have engineered
your system not to fall into this pitfall, but only if you knew about it and
only if it was worth the effort and other possible costs of doing so.
--
Gregory Stark
EnterpriseDB http://
? I don't see anything in
there stopping us from trying to toast varlenas that are smaller than a toast
pointer. Have I just missed something obvious?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
mean it shouldn't go in pg_control of course but it would just be
a function of BLCKSIZE and the architecture alignment and not dependent on any
user configurable value.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
an array of something is
create a domain for it then use arrays of that domain.
I'm not sure whether having to create a new command is cleaner or less clean
than overloading an existing command with two purposes.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
-
turn up
with a finished patch. They have questions and need help in areas. If you
insist on a "finished" patch before you even consider reviewing their work
it's not going to work.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(e
e still working on them doesn't necessarily mean what they have so far
isn't worth committing as is yet.
> OK, but we don't want something that is ready to be committed, we need
> it complete.
So how many more releases before you think Postgres is "complete"?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
#x27;s not an issue" comment?
It seems like we do have a few committers who should be able to review code
quality but are uncertain about making major design decisions. If, for
example, Bruce or Jan reviewed patches more invasive than they usually do for
code quality and checked wi
me valid. The goal of having an xid on the index was so we would know when
we could start doing HOT updates again. That seems like a much lesser cost
than not being able to use the index until all live transactions exit.
--
Gregory Stark
EnterpriseDB http://www.enter
Sorry for the false alarm.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 4: Have you searched our list archives?
http://archives.postgresql.org
ER BY { order_by_clauses[column_selected] }
You certainly don't want to a plan a new query for every possible user, but
you don't mind caching 5 different plans for the five display columns
depending on which the user has clicked on.
--
Gregory Stark
EnterpriseDB http://www.ent
might even work on all compilers
and just silently be causing things to be aligned differently than they
expect.
On the other hand it I don't really think it would cause any problems if
people stored their typtypes in integers. Except for the actual FormData_pg_*
structures the precise al
red by the original K&R C book.
IIRC there's something odd about the scope of the declared struct label.
Something like it previously extended to the end of the file but post-ANSI was
limited to the scope it's declared in (including very limited scopes where it
would be useless such
aint. In practice people are usually pretty comfortable
not having the database enforce such a constraint since it's easy to have the
application enforce these types of constraints anyways.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---
a=100..199 in partition two, etc. It could still automatically build
indexes on (a,b,c) on each partition and somehow note that the unique
constraint is guaranteed across the whole partitioned table.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
-
sequence-generated or something equally reliable so the
constraints are really just there as a backstop; you're not depending on them
for correctness.
At some level not having them is actually a nice thing for DBAs. It gives them
an excuse for not having the constraint that will only c
n is greater than the time saved
on a select not including the column" or something like that.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 7: You can help support the PostgreSQL project by d
o
make your life easier, not something to flog yourself with to prove how good
your database design skills are.
Oracle calls these "global" indexes and imho they defeat the whole purpose
behind partitioning your data in the first place.
--
Gregory Stark
EnterpriseDB http:
endif
%.so: %.o
! $(CC) -shared -o $@ $<
sqlmansect = 7
--- 11,16
endif
%.so: %.o
! $(CC) $(CFLAGS) -shared -o $@ $<
sqlmansect = 7
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---
would be much more complex than what I
think you're imagining.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 1: if posting/reading through Usenet, please send an appropriate
subsc
s that instead of a general purpose shmem hook you note the
pid of the process that is expecting to handle the cleanup. So for instance
something like pg_start_backup instead of setting a flag would store its pid.
Then someone else who comes along and finds the field set has to double check
if
Tom Lane <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
> > %.so: %.o
> > ! $(CC) -shared -o $@ $<
>
> > sqlmansect = 7
> > --- 11,16
> > endif
>
> > %.so: %.o
> > ! $(CC) $(CFLAGS)
aps TOAST is the wrong kind of vertical partitioning for this. Perhaps
we should be using TOAST to deal with the "large datum" problem and have a
different looking tool entirely for the "vertical partitioning rarely used
columns" problem.
--
Gregory Stark
EnterpriseDB
this may be better is that "what percentage of the shared
buffers the bgwriter allows to get old between wakeups" seems more likely to
be a universal constant that people won't have to adjust than "fixed time
interval between bgwriter cleanup operations".
Just a
hey SCSI, PATA, or
SATA? Can you check their configuration at all or does the RAID hide all that
from you? Does the RAID have a battery backed cache?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 5:
ing patch that works the other way around we could
experiment with that and see if there are actual situations where sleeping for
0ms is necessary. Perhaps a mixture of the two approaches will be necessary
anyways because of the granularity issue.
--
Gregory Stark
EnterpriseDB http://www.
time on it. Otherwise,
> I'll post more as I work it out.
It probably doesn't make sense to work on just this one case. There are folks
looking at update-able views. If we had that then this would simplify to
simply recognizing the case and invoking the rewriter to get you the insert
s
you would still have to have code in COPY supporting creating insert
statements which isn't how it works now.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster
s and DELETEs
either.
Oracle does actually support syntax like this, even for joins, and it's
awfully convenient for UPDATE where it handles the same kind of cases we use
our UPDATE ... FROM syntax.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
--
or only the object we're waiting on and
store that information in the lock table for others to refer to. We would have
to do the syscache lookup either always or at the point where we first decide
we have to block.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.
n
+* quals that are OR-of-AND structures. If so, add them to the rel's
+* restriction list, and recompute the size estimates.
+*/
+ if (create_or_index_quals(root, rel))
+ set_baserel_size_estimates(root, rel);
+
/*
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>> The SearchCatCache here is the one in get_attavgwidth called to estimate the
>> relation width.
>
> Hmm, that information is supposed to be cached ... could you pr
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>> The SearchCatCache here is the one in get_attavgwidth called to estimate the
>> relation width.
>
> Hmm, that information is supposed to be cached ... could you pr
1.212.69 204102/424529 get_attavgwidth [37]
1.212.69 204308/424529 TupleDescInitEntry [36]
[632]0.00.000.00 418517 SearchSysCache [632]
418517 SearchCatCache [15]
--
Gregory
"Gregory Stark" <[EMAIL PROTECTED]> writes:
> "Tom Lane" <[EMAIL PROTECTED]> writes:
>
>> Applied along with some other hacking to reduce the costs of the
>> lower-level functions that this example shows to be inefficient.
>> They
s little additional work for
the DBA and "read-only" is a nice simple concept for a DBA to understand. It's
even a useful feature for other purposes. It also can catch a lot more cases
than the one you describe. In particular it would eliminate the parent table
if it has no rows which gi
"position" and "instance"; they're
> just two coordinates to get at the problem.
Wouldn't that just be column 1 in rows 2 and 3?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
How can we make that work
> without indulging in untranslatable keyword-insertion?
Hm, I guess the SQL spec terminology in both cases would be "table
expression".
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of br
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>> The main data from the statistics that's of interest here are the extreme
>> values of the histogram. If we're not interested in any values in that range
>> t
nyway.
SELECT
postgres=# create table bar as select null union all select null;
SELECT
postgres=# \d foo
Table "public.foo"
Column | Type| Modifiers
--+---+---
?column? | "unknown" |
postgres=# \d bar
Table "public.bar&
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>
>> Does it even matter except in the case of nulls? I mean, if the inner pair
>> uses integer and then the outer pair uses bigint it'll still work correctly,
>
fixing the bug).
So in short I think with your patch this piece of code no longer has a role.
Either your patch kicks in and we never even look at the damaged page at all,
or we should be treating it as corrupt data and just check zero_damaged_pages
alone and not do anything
literal.
As of Postgres 8.1 you can see how much space a column is taking up using the
pg_column_size() function. This won't include alignment padding but will
include the length header for that column.
You can see how much a given row is taking up by passing the entire row to
og_column
eing able to double check your work results
before committing them is extremely valuable.
So basically what I'm saying is that I think what I recommend users use should
just be the default when using psql interactively.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
-
ped physically until you execute one of the commands
that rewrites the table entirely. "CLUSTER" and "ALTER TABLE ALTER column TYPE
type" are the two popular ones.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadc
y
> rather avoid that.
>
> Any thoughts, better ideas?
If we want to have an idle_in_statement_timeout then we'll need to introduce a
select loop instead of just directly blocking on recv anyways. Does that mean
we may as well bite the bullet now?
--
Gregory Stark
Enter
patch queue empty all the time than to spend months reviewing and merging
six-month-old patches once a year. But I still have hope this is a problem
that will fix itself naturally with time.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster
get reviewed early in this cycle if they
weren't last cycle?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 7: You can help support the PostgreSQL project by donating at
t buys us. Detecting bitrot isn't terribly helpful and it doesn't help
us actually deal with the bitrot once it's happened.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 7: Y
"Simon Riggs" <[EMAIL PROTECTED]> writes:
> (Yes, I understand the word means totally different thing in each case).
Geez, you had me worried. So it's just the spelling that you're noting?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
--
ing HOT tuples without index maintenance is useful even if no
changes to the space allocation is made is useful. It won't get the space
usage but it would save on index thrashing. But that still implies all the
code to handle scans, updates, index builds, etc. Those chunks could be
separated
y what we've been missing recently I think.
> * [PATCHES] non-recursive WITH clause support
> /Gregory Stark/
>
> I think the consensus is that we should wait for a more complete WITH
> implementation to be submitted, since this one creates compatibility
> issues withou
pent accessing the data would be the most important metric.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
h needs and ask for their analysis of the patch then commit it yourself?
You can still review it for general code quality and trust the non-committer's
review of whether the domain-specific change is correct.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
n their garage.
1991 J. NEEL Death of Partner vi. 83 `Forensic rang,' Bruce reported
dourly. `The autopsy report is on its way.'
Though it seems like a poor definition. My English teachers would have chided
me for using the word in its definition...
--
Gregory Stark
ybe we need an fflush(stderr) in ExceptionalCondition?
stderr is supposed to be line-buffered by default. Couldn't hurt I suppose.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 7:
an index
into an array stored in global memory then you could get away without a lock
on the element in the array.
It starts to get to be a fair amount of code when you think about how you
would reuse elements of the array. That's why I suggest only looking at this
if down the road we fin
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>> You keep saying that but I think it's wrong. There are trivial patches that
>> were submitted last year that are still sitting in the queue.
>
> Um ... which ones
way better than OS readahead.
Well that's going to depend on the OS. Last I checked Linux's readahead logic
is pretty straightforward and doesn't try to do any better than 32k readahead
and is easily fooled. However I wouldn't be surprised if that's changed.
--
Grego
- probably that
would only be possible when the sort is sorting directly a table scan. I don't
even know how easy it would be to get that information.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)--
te any TCP/IP sockets
Is it possible the previous discussion related to servers with IPv6 where they
did manage to bind to one but not the other?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
T
a TIME_WAIT state at all would certainly violate the TCP spec. So it's
somewhat unlikely that that's what they're doing. But anything's possible.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Gregory Stark <[EMAIL PROTECTED]> writes:
>> "Tom Lane" <[EMAIL PROTECTED]> writes:
>>> What happens if we just "#ifndef WIN32" the setsockopt(SO_REUSEADDR)
>>> call? I believe th
FIN_WAIT1
which would immediately go to FIN_WAIT2 if psql is still reachable. I think
the connection you're seeing in CLOSE_WAIT is the client's end of the
connection.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)-
fset 0
LOG: invalid secondary checkpoint record
PANIC: could not locate a valid checkpoint record
LOG: startup process (PID 9590) was terminated by signal 6: Aborted
LOG: aborting startup due to startup process failure
--
Gregory Stark
EnterpriseDB http://www.enterp
"Alvaro Herrera" <[EMAIL PROTECTED]> writes:
> Gregory Stark wrote:
>>
>> When starting up a postmaster from an older build on a database initialized
>> with a newer build I'm getting the following errors. I think I saw the same
>> thing earlie
> for months, and if it is unhealthy, what are our options?
I don't see any reason development has to stop while the tree is in feature
freeze. If it led to patches being ready for review and getting reviewed and
committed early in the cycle rather than just before release I think it
e feedback for the authors but not allow the
time to respond to that feedback to grow. If you review a patch and find
problems with it and there's only three weeks for the author to deal with
those problems and it's not enough time then he can deal with them and submit
it for next re
t scenarios that returned multiple
result sets via rules but I don't know how to arrange that. Anyone remember?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
"Tom Lane" <[EMAIL PROTECTED]> writes:
> Greg Stark <[EMAIL PROTECTED]> writes:
>> "Jim C. Nasby" <[EMAIL PROTECTED]> writes:
>>> On Wed, May 16, 2007 at 09:43:36AM -0400, Gregory Stark wrote:
>>>> I seem to recall there was a
sure the size of the tuple. I think that will
measure the size of the tuple as is before the columns are detoasted.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster
"Bruce Momjian" <[EMAIL PROTECTED]> writes:
> Gregory Stark wrote:
>> "Bruce Momjian" <[EMAIL PROTECTED]> writes:
>>
>> > I tested TOAST using a method similar to the above method against CVS
>> > HEAD, with default shared_buffers
"Gregory Stark" <[EMAIL PROTECTED]> writes:
> Is your database initialized with C locale? If so then length(text) is
> optimized to not have to detoast:
>
> if (pg_database_encoding_max_length() == 1)
> PG_RETURN_INT32(toast_raw_datum_size(str
"Bruce Momjian" <[EMAIL PROTECTED]> writes:
> Gregory Stark wrote:
>
>> Is your database initialized with C locale? If so then length(text) is
>> optimized to not have to detoast:
>>
>> if (pg_database_encoding_max_length() == 1)
>>
orce it to load both
chunks. But I think the real cost of unnecessary toasting is the random disk
i/o so the cpu cost is of secondary interest.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 1: if
effectiveness. But still it seems it would only take one extra
seek for a 2k chunk placed on a different page to swamp any effect the wasted
space would cause.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)
to use a smaller chunk size and get better data density then we know
there's no argument for a smaller chunk size.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 6: explain analyze is your friend
hink we need to do the latter of these first. Because if it shows
that bloating the toast table is faster than chopping up data into finer
chunks then we'll want to set TOAST_MAX_CHUNK_SIZE to 8k and then your tests
above will have to be rerun.
--
Gregory Stark
EnterpriseDB
and
> then recheck before erroring out.
Is there any way to tell, perhaps from the command string, that the process is
about to start exiting? What stage of exiting is it that we think the kernel
goes to lunch?
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
than just
having a dummy light come on even if I'm going to go to the same garage either
way.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster
tial scans when there was an index scan available. But I
suspect it's the same thing going on.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 7: You can help support the PostgreSQL project by donating at
http://www.postgresql.org/about/donate
g the precise thing we're interested in.
--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
---(end of broadcast)---
TIP 3: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq
1 - 100 of 1651 matches
Mail list logo