a is physically on the platter, they will
"forget" if they see activity that looks like benchmarking. Others just
ignore the command, and in any case they all default to unsafe mode.)
If the reason that a block CRC isn't on the TODO list is that Vadim
objects, maybe we should
maybe while Vadim was absent.
Should I re-post the previous text?
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
previous text?
>
> Let's return to this discussion *after* 7.1 release.
> My main objection was (and is) - no time to deal with
> this issue for 7.1.
OK, everybody agreed on that before.
This doesn't read like an objection to having it on the TODO list
discussion until after 7.1 is out
the door, but that "dubious at best" demands an answer. See the archive
posting:
http://www.postgresql.org/mhonarc/pgsql-hackers/2001-01/msg00473.html
...
Incidentally, is the page at
http://www.postgresql.org/mhonarc/pgsql-hackers/2001-01/
the best
d creates a table with the shorter name; but
if you refer to the table by the same long name, PG reports an error.
(Very long names may show up in machine- generated schemas.) Would
patches for this, e.g. to refuse to create a table with an impossible
name, be welcome
choice is not just between Yacc and a hand-coded parser.
Since Yacc, many more powerful parser generators have been released,
one of which might be just right for PG.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 6: Have you searched our list archives?
http://www.postgresql.org/search.mpl
On Fri, Apr 13, 2001 at 01:16:43AM -0400, Tom Lane wrote:
> [EMAIL PROTECTED] (Nathan Myers) writes:
> > We have noticed here also that object (e.g. table) names get truncated
> > in some places and not others. If you create a table with a long name,
> > PG truncates t
On Fri, Apr 13, 2001 at 02:54:47PM -0400, Tom Lane wrote:
> [EMAIL PROTECTED] (Nathan Myers) writes:
> > Sorry, false alarm. When I got the test case, it turned out to
> > be the more familiar problem:
>
> > create table foo_..._bar1 (id1 ...);
> > [notic
On Fri, Apr 13, 2001 at 04:27:15PM -0400, Tom Lane wrote:
> [EMAIL PROTECTED] (Nathan Myers) writes:
> > We are thinking about working around the name length limitation
> > (encountered in migrating from other dbs) by allowing "foo.bar.baz"
> > name syntax, as
> [EMAIL PROTECTED]
>
> Freshmeat, linuxtoday. If the release includes RPMs for Red Hat Linux,
> redhat-announce is also a suitable location.
Linux Journal: [EMAIL PROTECTED]
Freshmeat: [EMAIL PROTECTED]
LinuxToday: http://linuxtoday.com/contribute.php3
--
Nathan Mye
r to help her check her
facts next time. PostgreSQL needs friends in the press, even if
they are ignorant or lazy. It doesn't need any enemies in the press.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster
On Sun, Apr 15, 2001 at 11:44:48AM -0300, The Hermit Hacker wrote:
> On Sat, 14 Apr 2001, Nathan Myers wrote:
>
> > This is probably a good time to point out that this is the _worst_
> > _possible_ response to erroneous reportage. The perception by readers
> > will
publishes them. Typically the Linux magazines print what he
writes, and thereby get it mostly right, but the finance magazines
mangle them to total nonsense.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
2 and 7.3, and lots of deployments. Few will read his rambling.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
can possibly provide the needed service.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
y, very nasty. If they find
that by seeding the press with reasonable-sounding criticisms of PG,
they can prod the PG community into making itself look like idiots,
they will go to town on it.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)
ter need for simple
components than people building little ones.
What might be a reasonable alternative would be a BEGIN timeout: report
failure as soon as possible after N seconds unless the timer is reset,
such as by a commit. Such a timeout would be meaningful at the
database-interface
ply for the whole transaction. We could just set an alarm and do a
> longjump out on timeout.
Of course, it begs the question why the client couldn't do that
itself, and leave PG out of the picture. But that's what we've
been talking about all along.
Nathan Myers
t the timeout in a psql script
> than to try and code it.
Good: add a timeout feature to psql.
There's no limit to what features you might add to the database
core once you decide that new features need have nothing to do with
databases. Why not (drum roll...) deliver e-mail?
Natha
ally when it's made to
work, it runs on a LAN.
Reliable WAN replication is harder. Most of the proprietary database
companies will tell you they can do it, but their customers will tell
you they can't.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadc
On Fri, Apr 20, 2001 at 04:53:43PM -0700, G. Anthony Reina wrote:
> Nathan Myers wrote:
>
> > Does the replication have to be reliable? Are you equipped to
> > reconcile databases that have got out of sync, when it's not?
> > Will the different labs ever tr
to make use of? I'll play with it if so ...
I agree that it would be useful. Even more useful would be soft load
shedding, where once some load average level is exceeded the postmaster
delays a bit (proportionately) before accepting a connection.
Nathan Myers
[EMAIL PROTECTED]
tive looks much better to me. On Linux you have
the much more efficient alternative, /proc/loadavg. (I wouldn't
use system(), though.)
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 2: you can get off all lists
er excessive load, to clients who already
have a connection -- even if they just got one -- can have a similar
effect, but with finer granularity and with less complexity in the
clients.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 6: Have you searched our list archives?
http://www.postgresql.org/search.mpl
rather than all moving in concert reading or writing
only one block at a time. (Striping the WAL file on a couple of raw
devices might be a good idea along with the above. Can we do that?)
But of course speculation is much less useful than trying it. Some
measurements before and after would be reall
Now that 7.1 is safely in the can, is it time to consider
this patch? It provides cursor support in PL.
http://www.airs.com/ian/postgresql-cursor.patch
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 2: you can get off all lists at
On Wed, Apr 25, 2001 at 09:41:57AM -0300, The Hermit Hacker wrote:
> On Tue, 24 Apr 2001, Nathan Myers wrote:
>
> > On Tue, Apr 24, 2001 at 11:28:17PM -0300, The Hermit Hacker wrote:
> > > I have a Dual-866, 1gig of RAM and strip'd file systems ... this past
> > &
On Tue, May 15, 2001 at 05:53:36PM -0400, Bruce Momjian wrote:
> > But, if I may editorialize a little myself, this is just indicative of a
> > 'Fortress PostgreSQL' attitude that is easy to get into. 'We've always
>
> I have to admit I like the sound of 'Fortress PostgreSQL'. :-)
Ye Olde Pos
are justified only as performance
enhancements.
It was written in 1981 and is undiminished by the subsequent decades.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister com
On Thu, May 17, 2001 at 06:04:54PM +0800, Lincoln Yeoh wrote:
> At 12:24 AM 17-05-2001 -0700, Nathan Myers wrote:
> >
> >For those of you who have missed it, here
> >
>
>>http://www.google.com/search?q=cache:web.mit.edu/Saltzer/www/publications/endtoend/endto
. Preferring mostly-full blocks improves active-storage and
cache density because a table tends to occupy fewer total blocks.
Does anybody know of papers that analyze the tradeoffs involved?
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast
ted transactions on the old database when
you make the switch. But master-to-master replication is *hard* to
make work, and intrusive besides.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 5: Have you checked our exte
move old ones (which
>do not hold statuses for any running transactions).
I missed the original discussions; apologies if this has already been
beaten into the ground. But... mightn't sub-transactions be a
better-structured way to expose this service?
Nathan Myers
[
y,
you have to add another, overloaded member that is const, and turn
the non-const function into a wrapper. For example:
void Foo::bar() { ... } // existing interface
becomes
void Foo::bar() { ((const Foo*)this)->bar(); }
void Foo::bar() const { ... }
Nathan Myers
[EMAIL PRO
:bar() const { ... }
>
> Thanks. That was my problem, not knowing when I break link compatiblity
> in C++. Major updated.
Wouldn't it be better to add the forwarding function and keep
the same major number? It's quite disruptive to change the
major number for wh
careful planning about
breaking link compatibility. Other changes that break link compatibility
include changing a struct or class referred to from inline functions, and
adding a virtual function in a base class.
It's possible to make a lot of improvements without breaking link
compatibilit
to use the option. After a
major release, any modern construct that caused no trouble in the
last release is considered OK to use.
This process makes it easy to leave behind obsolete language
restrictions: if you wonder if it's OK now to use a feature that once
broke some cruft
lmost always results in enough
performance improvement to make doing so worth a lot of disruption.
Today mmap() is used heavily enough, in important programs, that
worries about unreliability are no better founded than worries about
read().
Nathan Myers
[EMAIL PROTECTED]
think that
> "char" ought to behave the same as char(1).
Does the standard require any particular behavior in with NUL
characters? I'd like to see PG move toward treating them as ordinary
control characters. I realize that at best it will take a long time
to get there. C
d it out and redid it correctly,
you broke his code, you can just laugh, and add, if you're feeling
charitable, "experimental features are not to be depended on".
--
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 6: Have you searched our list archives?
http://www.postgresql.org/search.mpl
y weeks at a time. I also have no Flash
plugin. All together it makes for a far more pleasant web experience.
I didn't notice any problem with the Zend page.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 3: if posting/reading
that Java
doesn't also crash Netscape; it's just that pages with Java in them
are not very common.
There's little point in bookmarking a site that depends on client-side
Javascript or Java, because it won't be up for very long.
But this is *really* of
s some errno codes that are not significant;
in particular, EINTR, EAGAIN, and EWOULDBLOCK. Of these, maybe
only the first occurs on a blocking socket.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 5: Have you checked our extensiv
s.)
Things are a little more stable in some places (e.g. in Europe it is
improving) but worldwide all is chaos.
Assigning some country's current abbreviations at compile time is madness.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
T
page 94. Examples using
other techniques (sigwait, nonblocking mq_receive) are presented also.
A pipe per backend might be considered pretty expensive. Does UNIX
allocate a pipe buffer before there's anything to put in it?
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 6: Have you searched our list archives?
http://www.postgresql.org/search.mpl
On Thu, Jun 14, 2001 at 04:27:14PM -0400, Tom Lane wrote:
> [EMAIL PROTECTED] (Nathan Myers) writes:
> > It could open a pipe, and write(2) a byte to it in the signal handler,
> > and then have select(2) watch that pipe. (SIGHUP could use the same pipe.)
> > Of course t
inding a NUL at *(char*)0, or
on being able to say "free(p); p = p->next;". Yes, it appears to work,
at the moment, on some platforms, but that doesn't make it correct.
It may not be terribly urgent to fix it right now, but that's far from
"isn't broken". It at least merits a TODO entry.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
st if we
> use a wraparound style of allocating XIDs. I think Vadim is advocating
> resetting the XID counter to 0 at each system restart, so the active
> range of XIDs might be a lot smaller than 2^32 in that scenario.)
That assumes a pretty frequent system restart
7 -- to 127. See the six-page
discussion in Stevens UNPv1 beginning at page 93.
This is not to say we shouldn't fork before authentication, for
the above and other reasons, but the fix to listen(2)'s argument
should happen anyway.
Nathan Myers
[EMAIL PROTECTED]
---
re a new option on IMPORT. I suppose the
mappings could be temporary tables.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/users-lounge/docs/faq.html
r that we can't afford whole words, or even word
breaks? I propose "index_is_hint".
Actually, is the "ind[ex]" part even necessary?
How about "must_check_heap"?
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster
to 10240 now, or later when there are 20GHz CPUs.
If you want to make it more complicated, it would be more useful to
be able to set the value lower for runtime environments where PG is
competing for OS resources with another daemon that deserves higher
priority.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster
N), since there is no
> use in accepting more than your total allowed connections concurrently.
That might not have the effect you imagine, where many short-lived
connections are being made. In some cases it would mean that clients
are rejected that could have been served after a very short
that is often 5, which
is demonstrably too small.
> BTW: on linux, the backlog queue parameter is silently truncated to
> 128 anyway.
The 128 limit is common, applied on BSD and Solaris as well.
It will probably increase in future releases.
Nathan Myers
[EMAIL PROTECTED]
--
determine how many attempts can
be in the queue before the network stack itself rejects them without
the postmaster involved.
As it is, the listen() queue limit is not useful. It could be made
useful with a slight change in postmaster behavior.
Nathan Myers
[EMAIL PROTECTED]
---
On Tue, Jul 10, 2001 at 06:36:21PM -0400, Tom Lane wrote:
> [EMAIL PROTECTED] (Nathan Myers) writes:
> > All the OSes we know of fold it to 128, currently. We can jump it
> > to 10240 now, or later when there are 20GHz CPUs.
>
> > If you want to make it more compl
seems better than depending on SSL
authentication, because SSL certification seems to be universally
misconfigured.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster
PG will need to support someday)
doesn't seem to change matters.
Probably if listen() did fail, then one or other of bind(), accept(),
and read() would fail too.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
MySQL AB
would be within their rights to demand that the copyright to Gemini be
signed over, before offering forgiveness.
If Red Hat forks PostgreSQL, nobody will have any grounds for complaint.
(It's been forked lots of times already, less visibly.)
Nathan Myers
[EMAIL P
in the normal case authentication happens quickly.
Then we can use a small listen() backlog, and never accept() if we
have more than MaxBackend back ends. The OS will keep a small queue
corresponding to our small backlog, and the clients will do our load
shedding for us.
Nathan Myers
[EMAIL PROTECT
QL AB's license -- they shot the dog.
The lesson? Ask somebody competent, first, before you bet your
company playing license games.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
is a person who relies on someone
for financial support: Do you have any dependants?"
This is not for mailing-list pendantism, but just to make sure
that the right spelling gets into the code. (The page mentioned
above was found by entering "dependent dependant" into Google.)
bly the perl scripts should say, likewise,
#!/usr/bin/env perl
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
ce is that PG users are less
afraid to fork. Another is that without the GPL, we have elected
not to (and indeed cannot) stop any company from doing with PG what
NuSphere is doing with MySQL.
This is why characterizing the various licenses as more or less
"business-friendly" is
On Thu, Jul 26, 2001 at 05:38:23PM -0400, Bruce Momjian wrote:
> Nathan Myers wrote:
> > Bruce wrote:
> > >
> > > I can confirm that current CVS sources have the same bug.
> > >
> > > > It's a bug in timestamp output.
> >
On Thu, Jul 12, 2001 at 11:08:34PM +0200, Peter Eisentraut wrote:
> Nathan Myers writes:
>
> > When the system is too heavily loaded (however measured), any further
> > login attempts will fail. What I suggested is, instead of the
> > postmaster accept()ing the conne
"the second
as a decimal number (00-61)". A footnote mentions "the range [0-61]
for tm_sec allows for as many as two leap seconds".
This is not to say that pg_dump should misrepresent stored times,
but rather that PG should not reject those misrepresented times as
being i
future releases, OIDs will only be
guaranteed unique (modulo wraparounds) within a single table.
Nathan Myers
[EMAIL PROTECTED]
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/users-lounge/docs/faq.html
It is also a
vote for clarifying that contrib is, specifically, the place to
to put potentially useful things that have not been officially
qualified. The distinction is made to relieve pressure to add
insufficiently-considered features to the release proper, a
function contrib can serve only if it
e from
each operand, using unsigned arithmetic.
At a sustained rate of 10,000 transactions/second, any pair of 32-bit
XIDs less than 2.5 days apart compare properly.
Nathan Myers
[EMAIL PROTECTED]
t start with "__postgresql_call"
and adjust automatically, or report an error. This
- Breaks no backward compatibility,
- Defines a clear method for handling future changes, to prevent this
problem from arising again,
- Creates no particular inconvenience for writers of modules, and
- Might be very easy to implement.
Nathan Myers
[EMAIL PROTECTED]
er
> > in 7.1?
>
> What about X sockets and ssh-agent sockets, and so on?
> Where's the source to this thing? :)
>
> It would make more sense to fix tempreaper to ignore non regular
> files.
X sockets are in subdirectories, e.g. /tmp/.X11-unix/X0.
/tmp is a bad place for this stuff anyway.
Nathan Myers
[EMAIL PROTECTED]
. If the OS crashes, you're not. If the power goes out,
you're not.
The block size affects how much is written when you change only a
single record within a block. When you update a two-byte field in a
100-byte record, do you want to write 32k? (The answer is "maybe&quo
opyright
just to be able to disclaim liability, in the license -- but then you
need to actually have a license. That's why you don't see much public
domain software. (I am not a lawyer.)
Nathan Myers
[EMAIL PROTECTED]
at the oddities may be documented
doesn't really help much.)
For performance purposes, it may be more or less efficient to group
writes into 4K, 8K, or 32K chunks. That's not a matter of database
atomicity, but of I/O optimization. It can only confuse people to
use "atomicity" in that context.
Nathan Myers
[EMAIL PROTECTED]
On Tue, Nov 28, 2000 at 04:24:34PM -0500, Tom Lane wrote:
> Nathan Myers <[EMAIL PROTECTED]> writes:
> > In the event of a power outage, the drive will stop writing in
> > mid-sector.
>
> Really? Any competent drive firmware designer would've made sure that
&
nd neither is NTFS. In particular, that the database accepted
transactions afterward is far from proof that its files were not
corrupted.
Incompetent testers produce invalid tests. Invalid tests lead to
meaningless conclusions. Incompetent testers' employers suffer
from false confidence, and p
f an actual database file is corrupted, say by a
> > disk drive hosing a block or portion thereof with zeros. WAL-based
> > recovery at startup works on an intact database.
>
> No, WAL does help, cause you can then pull in your last dump and recover
> up to the moment that pow
In general, it's foolish to expect a single system to store very
valuable data with much confidence. To get full recoverability,
you need a "hot failover" system duplicating your transactions in
real time. (Even then, you're vulnerable to application-level
mistakes.)
Nathan Myers
[EMAIL PROTECTED]
ht get lucky, or you might just
think you were lucky.) This is the same as for most databases; an
embedded database that talks directly to the hardware might be able
to do better.
Nathan Myers
[EMAIL PROTECTED]
On Fri, Dec 01, 2000 at 01:54:23AM -0500, Alex Pilosov wrote:
> On Thu, 30 Nov 2000, Nathan Myers wrote:
> > After a power outage on an active database, you may have corruption
> > at low levels of the system, and unless you have enormous redundancy
> > (and actually use it
disk database image. Asking it to do something else, such as
supporting hot BAR, could interfere with it doing its main job.
Of course, only the person who implements hot BAR can say.
Nathan Myers
[EMAIL PROTECTED]
the foundation
> and later work will get us there".
Not to quibble, but for most of us, the answer to Don's question is:
"It gives a ~20x speedup over 7.0." That's pretty valuable to some of us.
If it turns out to be useful for other stuff, that's gravy.
Nathan Myers
[EMAIL PROTECTED]
by
replicating transactions at the application layer. That is, the
application talks to two different database instances, and enters
transactions into both. That's pretty hard to retrofit into an
existing application, so you'd really rather have replication in
the database. Of course, that's something PostgreSQL, Inc. is also
working on.
Nathan Myers
[EMAIL PROTECTED]
th ordinary disks. With a battery-backed disk server, yes.
Nathan Myers
[EMAIL PROTECTED]
, but wouldn't be useful as a WAL because it describes
differences from a snapshot backup, not from the current table
file contents.
Thus, I'm not saying that you can't implement both WAL and hot BAR
using the same log; rather, it's just not _obviously_ the best way to
do it.
Nathan Myers
[EMAIL PROTECTED]
On Fri, Dec 01, 2000 at 11:48:23AM -0800, Don Baccus wrote:
> At 11:09 AM 12/1/00 -0800, Nathan Myers wrote:
> >On Fri, Dec 01, 2000 at 10:01:15AM +0100, Zeugswetter Andreas SB wrote:
>
> >> If you need to restore from offsite backup you loose transactions
> >&g
project,
later. (Don't expect everybody to get along, afterward.) A less
drastic alternative is to release GPL'd patches.
3. Grin and bear it. Greed is a sin, but so is envy.
Flame wars about licensing mainly distract people from writing code.
How would *you* like the time
On Fri, Dec 01, 2000 at 12:00:12AM -0400, The Hermit Hacker wrote:
> On Thu, 30 Nov 2000, Nathan Myers wrote:
> > On Thu, Nov 30, 2000 at 07:02:01PM -0400, The Hermit Hacker wrote:
> > > v7.1 should improve crash recovery ...
> > > ... with the WAL stuff that Vadim is p
to
> know if such index will be implemented inside PostgreSQL.
Yes, please do send in your implementation for review.
Nathan Myers
[EMAIL PROTECTED]
for further redo ops. This means bigger log, of course.
Be sure to include a CRC of each part of the block that you hope
to replay individually.
Nathan Myers
[EMAIL PROTECTED]
ot raw partitions) to match partition block order, which often doesn't
match the file block order. Hence, the OSes are "crappy" too.
Wishful thinking is a poor substitute for real atomicity. Block
CRCs can at least verify complete writes to reasonable confidence,
if not ensure them.
Nathan Myers
ncm
e that *any* drive does it unless you have
specifically turned that off. The assumption is that if you care,
you have a UPS, or at least have configured the hardware yourself
to meet your needs.
It is purely wishful thinking to believe otherwise.
Nathan Myers
[EMAIL PROTECTED]
the
interface; anything that doesn't fit precisely should be treated
as an extension instead, and the corresponding standard interface
left unimplemented.
Nathan Myers
[EMAIL PROTECTED]
ocks, especially now that
> we can TOAST our data, I would strongly suggest to use strong hashes
> like RIPEMD or MD5 instead of CRC-32 and the like.
Cryptographically-secure hashes are unnecessarily expensive to compute.
A simple 64-bit CRC would be of equal value, at much less expense.
Nathan Myers
[EMAIL PROTECTED]
On Wed, Dec 06, 2000 at 06:53:37PM -0600, Bruce Guenter wrote:
> On Wed, Dec 06, 2000 at 11:08:00AM -0800, Nathan Myers wrote:
> > On Wed, Dec 06, 2000 at 11:49:10AM -0600, Bruce Guenter wrote:
> > >
> > > I don't know how pgsql does it, but the only safe way
of corruption, including RAM bit rot and
software bugs. The earlier and more reliably it's caught, the better.
The goal is to be able to say that a power outage won't invisibly
corrupt your database.
Here is are sources to a 64-bit CRC computation, under BSD license:
http://gcc.gnu.org/ml/gcc/1999-11n/msg00592.html
Nathan Myers
[EMAIL PROTECTED]
o.
4. For a way to mark the "current final" log entry, you want a lot more
confidence, because you read a lot more of them, and reading beyond
the end may cause you to corrupt a currently-valid database, which
seems a lot worse than just using a corrupted database.
Still, I agree that a 32-bit CRC is better than none at all.
Nathan Myers
[EMAIL PROTECTED]
On Fri, Dec 08, 2000 at 12:19:39PM -0600, Bruce Guenter wrote:
> On Thu, Dec 07, 2000 at 04:01:23PM -0800, Nathan Myers wrote:
> > 1. Computing a CRC-64 takes only about twice as long as a CRC-32, for
> >2^32 times the confidence. That's pretty cheap confidence.
tails about how the tests were run? I'd like to try it.
Nathan Myers
[EMAIL PROTECTED]
1 - 100 of 192 matches
Mail list logo