<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Advogato blog for alvherre</title>
    <link>http://www.advogato.org/person/alvherre/</link>
    <description>Advogato blog for alvherre</description>
    <language>en-us</language>
    <generator>mod_virgule</generator>
    <pubDate>Wed, 19 Jun 2013 18:03:57 GMT</pubDate>
    <item>
      <pubDate>Sun, 28 Feb 2010 02:56:18 GMT</pubDate>
      <title>28 Feb 2010</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=19</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=19</guid>
      <description>So there was an earthquake here and it seems some people&#xD;
tried to get news from me.  I can't reach my mail currently,&#xD;
so pardon me while I abuse this blog for a bit.  Fortunately&#xD;
my family is all alive and well; no damage taken.  The&#xD;
building we live on is still standing and has no damages&#xD;
either, though our appartment is now a mess of broken dishes&#xD;
and bottles.&#xD;
&#xD;
&lt;p&gt; I will be obviously unable to work much on patches, or&#xD;
anything really, for at least a week ...</description>
    </item>
    <item>
      <pubDate>Tue, 19 Jan 2010 20:29:29 GMT</pubDate>
      <title>19 Jan 2010</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=18</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=18</guid>
      <description>I just noticed that LWN.net &lt;a href="http://lwn.net/SubscriberLink/370157/ffbca6536acd6609/" &gt;published an article&lt;/a&gt; on Josh Berkus' talk on Linux.conf.au, &amp;ldquo;How to destroy your community&amp;rdquo;.  An interesting talk, judging from the article.  Enjoy :-)</description>
    </item>
    <item>
      <pubDate>Thu, 10 Sep 2009 15:30:24 GMT</pubDate>
      <title>10 Sep 2009</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=17</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=17</guid>
      <description>&lt;b&gt;Update:&lt;/b&gt; This was supposed to be posted &lt;a href="http://alvherre.livejournal.com" &gt;elsewhere&lt;/a&gt;.  It&#xD;
seems Advogato lacks a way to delete posts, so I'm now&#xD;
forced to pester readers with some spanish junk.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt; &lt;p&gt;Se acaba de publicar una nueva serie de versiones&#xD;
actualizadas de PostgreSQL para todas las ramas soportadas,&#xD;
desde 7.4 hasta 8.4.  El anuncio en espa&amp;ntilde;ol&#xD;
apareci&amp;oacute;, entre otros, en &lt;a href="http://www.postgresql.cl/node/42" &gt;postgresql.cl&lt;/a&gt;.&#xD;
(Y este es &lt;a href="http://archives.postgresql.org/message-id/200909090850.57739.josh@postgresql.org" &gt;el&#xD;
anuncio oficial&lt;/a&gt; en la lista pgsql-announce).  Se&#xD;
recomienda a todos actualizar a esta&#xD;
versi&amp;oacute;n.&lt;br&gt;&lt;br&gt;Y recuerden que para Windows&#xD;
s&amp;oacute;lo est&amp;aacute;n soportadas las ramas 8.2, 8.3 y&#xD;
8.4.  En las nuevas versiones se corrigi&amp;oacute; finalmente&#xD;
el problema que daba lugar al error &amp;ldquo;could not&#xD;
reattach to shared memory&amp;rdquo;, as&amp;iacute; que los&#xD;
usuarios de Windows son los que estar&amp;aacute;n m&amp;aacute;s&#xD;
contentos.&lt;br&gt;&lt;br&gt;Disfruten.</description>
    </item>
    <item>
      <pubDate>Tue, 14 Jul 2009 22:23:58 GMT</pubDate>
      <title>14 Jul 2009</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=16</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=16</guid>
      <description>
&lt;p&gt;&lt;br&gt;&lt;p&gt;&lt;b&gt;sprintf in SQL&lt;/b&gt;&lt;br&gt;&lt;br&gt;Ever needed to print out something with embedded data?  Not an uncommon requirement, I'm afraid.  Most people just concatenate stuff together:&lt;br&gt;&lt;br&gt;SELECT 'A number ' || 42 || ' is a ' || 21 || ' * ' || 2 || ' by any other name'&lt;br&gt;&lt;br&gt;Eventually it turns out confusing, as it's easy to visually mix the concatenation operator || with the quotes.&lt;br&gt;&lt;br&gt;PL/pgSQL offers a printf of sorts ... except that you can't use it everywhere you'd like:&lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;br&gt;RAISE NOTICE ' A number % is a % * % by any other name', 42, 21, 2;&lt;br&gt;&lt;/pre&gt;&lt;br&gt;&lt;br&gt;How to capture such a thing so that you can, for instance, use that as a return value?  Well, that's what most languages call an "sprintf" function or %-expansion.  It's a trivial technique really.&lt;br&gt;&lt;br&gt;So you want it in SQL?  Well, here it is, as a PL/pgSQL function for maximum portability.&lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;br&gt;CREATE OR REPLACE FUNCTION printf(fmt text, variadic args anyarray) returns text&lt;br&gt;language plpgsql AS $$&lt;br&gt;        DECLARE&lt;br&gt;                argcnt  int = 1;&lt;br&gt;                chrcnt  int = 0;&lt;br&gt;                fmtlen  int;&lt;br&gt;                CHR             text;&lt;br&gt;                output  text = '';&lt;br&gt;        BEGIN&lt;br&gt;                fmtlen = LENGTH(fmt);&lt;br&gt;                LOOP&lt;br&gt;                        chrcnt = chrcnt + 1;&lt;br&gt; &lt;br&gt;                        -- ran out of format string? bail out&lt;br&gt;                        IF chrcnt &amp;gt; fmtlen THEN&lt;br&gt;                                EXIT;&lt;br&gt;                        END IF;&lt;br&gt; &lt;br&gt;                        -- grab our char&lt;br&gt;                        CHR = substring(fmt, chrcnt, 1);&lt;br&gt; &lt;br&gt;                        -- %% means output a single %, and skip them&lt;br&gt;                        IF CHR = '%' AND substring(fmt, chrcnt + 1, 1) = '%' THEN&lt;br&gt;                                output = output || '%';&lt;br&gt;                                chrcnt = chrcnt + 1;&lt;br&gt;                                continue;&lt;br&gt;                        END IF;&lt;br&gt; &lt;br&gt;                        -- a % on its own means output an element from our arg list&lt;br&gt;                        IF CHR = '%' THEN&lt;br&gt;                                output = output || COALESCE(args[argcnt]::text, '');&lt;br&gt;                                argcnt = argcnt + 1;&lt;br&gt;                                continue;&lt;br&gt;                        END IF;&lt;br&gt; &lt;br&gt;                        -- no special case? output the thing&lt;br&gt;                        output = output || CHR;&lt;br&gt;                END LOOP;&lt;br&gt; &lt;br&gt;                RETURN output;&lt;br&gt;        END;&lt;br&gt;$$;&lt;br&gt;&lt;/pre&gt;&lt;br&gt;&lt;br&gt;This is not as flexible as the true sprintf function found in C and variants, which allow you to do neat stuff like fill some variables to fixed widths, or specify number of digits after the decimal point for non-integer values.  But it's already quite useful.  Furthermore, if you really need a given number of decimal you can add a cast to NUMERIC, which you can't do in C ...&lt;br&gt;&lt;br&gt;The biggest problem it has is that any argument that's not implicitly castable to text must carry an explicit cast.  The good thing is that by adding casts you can even print out complex structures like records or arrays.&lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;br&gt;# select printf('% is a % and % is a %, but %% is a %',&lt;br&gt;                'hello', 'word', 1::text, 'number', 'percent sign');&lt;br&gt;                           printf                           &lt;br&gt;------------------------------------------------------------&lt;br&gt; hello is a word and 1 is a number, but % is a percent sign&lt;br&gt;(1 fila)&lt;br&gt;&lt;br&gt;alvherre=# select printf('% %% is %',&lt;br&gt;              3.01110001100101::float::numeric(10,2)::text,&lt;br&gt;              ROW(1,2,3,'foo bar')::text);&lt;br&gt;           printf            &lt;br&gt;-----------------------------&lt;br&gt; 3.01 % is (1,2,3,"foo bar")&lt;br&gt;(1 fila)&lt;br&gt;&lt;/pre&gt;&lt;br&gt;&lt;br&gt;I'm sure you can find more interesting uses that than one!&lt;br&gt;&lt;br&gt;I've uploaded this function to our growing &lt;a href="http://wiki.postgresql.org/wiki/Snippets" &gt;collection of code snippets&lt;/a&gt; in our Wiki, so that it won't be lost in the dark corners of this blog.</description>
    </item>
    <item>
      <pubDate>Wed, 4 Mar 2009 16:20:10 GMT</pubDate>
      <title>4 Mar 2009</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=15</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=15</guid>
      <description>My take on &amp;laquo;Moderating Majordomo Lists with Vim and Mutt&amp;raquo;&#xD;
&#xD;
&lt;p&gt; &lt;a href="http://people.planetpostgresql.org/dfetter/index.php?/archives/17-Moderating-Majordomo-Lists-with-Vim-and-Mutt.html" &gt;David&lt;/a&gt;,&#xD;
&#xD;
&lt;p&gt; What I do instead is have these lines in .mutt/muttrc:&#xD;
&#xD;
&lt;p&gt; &lt;pre&gt;&#xD;
# Useful macros for Majordomo list administration&#xD;
macro pager R "|~/bin/majordomo-reject\nd" "Majordomo reject"&#xD;
macro pager A "|~/bin/majordomo-accept\nd" "Majordomo accept"&#xD;
&lt;/pre&gt;&#xD;
&#xD;
&lt;p&gt; And then majordomo-accept and majordomo-reject are symlinks&#xD;
to a Perl program that looks like this:&#xD;
&#xD;
&lt;p&gt; &lt;pre&gt;&#xD;
#!/usr/bin/perl&#xD;
&#xD;
&lt;p&gt; use warnings;&#xD;
use Net::SMTP;&#xD;
&#xD;
&lt;p&gt; if ($0 =~ /accept/) {&#xD;
    $action = "accept";&#xD;
    $fullaction = "Accepting";&#xD;
} elsif ($0 =~ /reject/) {&#xD;
    $action = "reject-quiet";&#xD;
    $fullaction = "Rejecting";&#xD;
}&#xD;
&#xD;
&lt;p&gt; die "No mode defined" unless defined $action;&#xD;
&#xD;
&lt;p&gt; while (&amp;lt;&amp;gt;) {&#xD;
    if (/^Subject: ([0-9A-Z-]{14}) : (CONSULT|REMINDER)/) {&#xD;
        $token = $1;&#xD;
        last;&#xD;
    }&#xD;
}&#xD;
&#xD;
&lt;p&gt; die "No token defined" unless defined $token;&#xD;
&#xD;
&lt;p&gt; $smtp = Net::SMTP-&amp;gt;new('localhost') or die "new: $!";&#xD;
&#xD;
&lt;p&gt; $smtp-&amp;gt;mail('alvherre@surnet.cl');&#xD;
$smtp-&amp;gt;to('majordomo@postgresql.org');&#xD;
&#xD;
&lt;p&gt; $smtp-&amp;gt;data;&#xD;
$smtp-&amp;gt;datasend(&amp;lt;&amp;lt;END_OF_MAIL);&#xD;
From: Moderation Robot &amp;lt;alvherre\@alvh.no-ip.org&amp;gt;&#xD;
To: postgresql.org's Majordomo &amp;lt;majordomo\@postgresql.org&amp;gt;&#xD;
Subject: $fullaction token $token&#xD;
&#xD;
&lt;p&gt; $action $token&#xD;
END_OF_MAIL&#xD;
$smtp-&amp;gt;dataend();&#xD;
$smtp-&amp;gt;quit;&#xD;
&lt;/pre&gt;&#xD;
&#xD;
&lt;p&gt; The main upside to this approach is that I don't have to hit&#xD;
"reply" to the email; I can just hit "R" or "A" on the mutt&#xD;
message view.</description>
    </item>
    <item>
      <pubDate>Thu, 14 Jun 2007 14:58:26 GMT</pubDate>
      <title>14 Jun 2007</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=14</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=14</guid>
      <description>&lt;p&gt;&lt;b&gt;O, the joy of these days&lt;/b&gt;&#xD;
&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;Two nights&#xD;
ago I was tired enough to decide that I wanted to upgrade my&#xD;
system.  See, this shouldn't be much of an issue &amp;mdash; I&#xD;
do that pretty regularly, random packages are automatically&#xD;
upgraded to the newest versions in Debian testing, nothing&#xD;
changes too much, and life is good.&#xD;
&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;Most of the time.&#xD;
&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;That night was one of the times that make the previous&#xD;
phrase start with "most of" and not "all".&#xD;
&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;What I typically do is launch an &lt;tt&gt;aptitude&#xD;
upgrade&lt;/tt&gt; and go to sleep. Which is what I did on that&#xD;
fatidical night.  Hilarity ensued the following morning when&#xD;
I got a mail from my early cvsup cronjob, which succintly said&#xD;
&#xD;
&lt;p&gt; &lt;pre&gt;&#xD;
Segmentation fault&#xD;
&lt;/pre&gt;&#xD;
&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;"Bah", I said to myself.  "Something unexpected must have&#xD;
happened.  Care not, because I will run it by hand and all&#xD;
will be well".  How ingenuous of me; because when I ran it&#xD;
by hand, not all was well at all!  Quite the opposite in&#xD;
fact.  I got the same&#xD;
&#xD;
&lt;p&gt; &lt;pre&gt;&#xD;
Segmentation fault&#xD;
&lt;/pre&gt;&#xD;
&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;But I surely can fix this little annoyance, can't I? &#xD;
"Sure I can", I eased myself.  "I'll just run the crasher&#xD;
under GDB and quickly discover the failure".  My ingenuity&#xD;
was still blinding me.  Reality struck not long after that:&#xD;
&#xD;
&lt;p&gt; &lt;pre&gt;$ gdb cvsup&#xD;
(gdb) run -g cvsup.pgsql&#xD;
Starting program: /home/alvherre/bin/cvsup -g cvsup.pgsql&#xD;
warning: Lowest section in system-supplied DSO at 0xffffe000&#xD;
is .hash at ffffe0b4&#xD;
(no debugging symbols found)&#xD;
  [repeated about 15 times]&#xD;
&#xD;
&lt;p&gt; Program received signal SIGSEGV, Segmentation fault.&#xD;
0xf7285578 in ?? ()&#xD;
(gdb) bt&#xD;
#0  0xf7285578 in&#xD;
?? ()Cannot access memory at address 0xf86cd0&#xD;
&lt;/pre&gt;&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;If I have ever seen a more useless&#xD;
backtrace, it must have been in a previous life.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;Of course, this cvsup binary was compiled in a machine&#xD;
that I no longer&#xD;
have, the compiler itself is hard to find, let alone&#xD;
compile, so generating&#xD;
anew cvsup binary is probably out of the question; or at&#xD;
least, it will take a&#xD;
very long while to do.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;So here I am, pondering whether I should instead try to&#xD;
run this binary in&#xD;
ai386 Sarge chroot jail that I have lying around (which I&#xD;
use for those&#xD;
peskyAdobe Flash wannabee-webapps), waste my time trying to&#xD;
get a new CVSup&#xD;
binary, orjust give up and start using rsync to fetch the&#xD;
Postgres repository&#xD;
instead.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;And it promised to be such a lovely, cold, fire-enjoying&#xD;
morn. &#xD;
&#xD;
&lt;p&gt; &lt;p&gt;It must have been one of those days I should have stayed&#xD;
in bed,&#xD;
becauselater I had to go out to deliver a letter (yes, that&#xD;
dead tree stuff&#xD;
that makes you go out somewhere and pass it by hand to&#xD;
someone else to take&#xD;
care of); a matter of minutes, I said, so I grabbed my bike&#xD;
and pedaled all the&#xD;
way to the bus stop; chained the bike, delivered thestuff&#xD;
quickly and as I went&#xD;
back to unchain the bike ... the key broke in the lock.  So&#xD;
I had to walk home,&#xD;
get my pliers, walk back, and dissassemble the lock. &#xD;
Thiswas a matter of a&#xD;
minute or two (not including the walks), after which I felt&#xD;
&lt;b&gt;really safe&lt;/b&gt;&#xD;
about that lock.  Of course, I trashed it.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;So I think Mother Nature must be against me for some&#xD;
reason.  And I think&#xD;
Iknow why: it's probably because I haven't been taking any&#xD;
photos.  And&#xD;
whywould that be, you might ask?  And I might answer: it is&#xD;
because last&#xD;
friday,as we were going out for the Holden concert, I&#xD;
dropped the bag where I&#xD;
keep my camera &amp;mdash; and no!  You don't need to guess.  I&#xD;
probably went pale&#xD;
for abit, but there was no one there with another camera to&#xD;
take a picture of&#xD;
the event.  Colors returned to my face as I observed that&#xD;
the only thing that&#xD;
hadbroken was the UV filter.  But still, no one sells UV&#xD;
filters in this little&#xD;
city, nor anyphotographic equipment at all really.  So I'm&#xD;
stuck without photos&#xD;
until I can getsomewhere civilized, where they do have stores.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;Now, you would say all these things are not really all&#xD;
that much of a&#xD;
problem.  And you might even be right.  What's more, I would&#xD;
have agreed!  So,&#xD;
not havingenough problems, yesterday night I decided that I&#xD;
wanted to upgrade&#xD;
the old fashionedGaim to the new, shiny, non-patent-encumbered,&#xD;
non-trademark-infringing Pidgin. After the process, which&#xD;
was pretty quick, I&#xD;
restarted the thing in order tohave better icons to look at.&#xD;
 And now the&#xD;
problem comes &amp;mdash;  because after the upgrade, Ican't&#xD;
connect to either&#xD;
jabber.commandprompt.com or jabber.postgresql.org.  For all&#xD;
intents and&#xD;
purposes, I'm offline.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;So this morning I started a good fire first thing after&#xD;
waking up, just to&#xD;
make sure that cold won't be a problem today.  Because there&#xD;
will be others&#xD;
&amp;mdash; I am sure.  And I will leave the camera at home and&#xD;
stay very far away&#xD;
from it so that it doesn't suffer any more damage.</description>
    </item>
    <item>
      <pubDate>Tue, 13 Mar 2007 13:18:34 GMT</pubDate>
      <title>13 Mar 2007</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=13</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=13</guid>
      <description>
&lt;p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://people.planetpostgresql.org/mha/index.php?/archives/142-Messing-with-the-website.html" &gt;Magnus&lt;/a&gt;,&lt;br /&gt;&lt;br /&gt;You just mentioned that there is a facility for translating news, quotes and events in the PostgreSQL website.  We (the spanish community) want to know: how does one go about doing that?  I looked around the site a bit, and I can't seem to find any link that would allow us to do that.&lt;br /&gt;&lt;br /&gt;If there was also a way to translate the whole website, akin to Debian's site which is fully i18n'd, that would surely rock.&lt;br /&gt;&lt;br /&gt;Thanks.</description>
    </item>
    <item>
      <pubDate>Thu, 8 Feb 2007 14:59:34 GMT</pubDate>
      <title>8 Feb 2007</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=12</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=12</guid>
      <description>
&lt;p&gt;&lt;b&gt;Hotmail shipping delivery failure reports with BOM&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I just noticed that some messages that I've been discarding thinking&lt;br /&gt;they were spam were in fact delivery failure reports from Hotmail.&lt;br /&gt;&lt;br /&gt;The problem is that they show up with an empty header, and my MUA shows&lt;br /&gt;a sender of "@".  More junk, I thought, and deleted them on sight&lt;br /&gt;without opening.  A couple of days ago I opened one of them and saw&lt;br /&gt;this in the body:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;rom: postmaster@mail.hotmail.com&lt;br /&gt;To: pgsql-es-ayuda-owner+M24188@postgresql.org&lt;br /&gt;Date: Thu, 08 Feb 2007 06:23:21 GMT&lt;br /&gt;MIME-Version: 1.0&lt;br /&gt;Content-Type: multipart/report; report-type=delivery-status;&lt;br /&gt;        boundary="9B095B5ADSN=_FF160181E5E3413A96EDC9046EF?WOM1.labinte"&lt;br /&gt;X-DSNContext: 7ce717b1 - 1196 - 00000002 - 00000000&lt;br /&gt;Subject: Delivery Status Notification (Failure)&lt;br /&gt;Return-Path: &amp;lt;&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Wow, I thought, this looks suspiciously similar to a mail header.  Note the missing F in "From: " though.&lt;br /&gt;&lt;br /&gt;I opened it on vim and saw this:&lt;br /&gt;&amp;lt;feff&amp;gt;From: postmaster@mail.hotmail.com&lt;br /&gt;&lt;br /&gt;A Byte-order-mark :-(  Apparently someone at Microsoft is dumb enough to stash that thing in front of their mail.&lt;br /&gt;&lt;br /&gt;Saturating the market with the idiotic Windows stuff was not enough -- now they have to inflict upon us a new level of stupidity.&lt;br /&gt;&lt;br /&gt;I wonder when will come the day when all mail generated in Microsoft systems is incompatible with everyone else.  For now, I suggest the poor fellows using Hotmail to switch to something else (Gmail.com seems very popular these days.  If you want an invitation, just ask.)</description>
    </item>
    <item>
      <pubDate>Tue, 23 Jan 2007 16:49:12 GMT</pubDate>
      <title>23 Jan 2007</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=11</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=11</guid>
      <description>
&lt;p&gt;&lt;b&gt;Buildfarm struggles&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;It seems the &lt;a href="http://buildfarm.postgresql.org" &gt;buildfarm&lt;/a&gt; has been failing not only on Win32, but also on other machines!  The fact is that on Win32 the failure is only much more probable.  So probable, in fact, it seems to happen everytime.&lt;br /&gt;&lt;br /&gt;The failing test is the stats test, which tries to measure whether the stat system is actually counting operations on the tables.  Initially it was thought that autovacuum was the cause, but some investigation suggests that not to be the case.&lt;br /&gt;&lt;br /&gt;Magnus has been helping me pinpoint the problem.  The first thing we tried was to have autovacuum use a "reasonable" setting for vacuum_cost_delay.  "Give it 10 milliseconds," I told him, confident that such a low setting was enough to cause the scheduler to let the stats system to run and thus increment the counters.  The theory was that autovacuum being enabled caused stats not to have time to run in the 2 seconds that the test sleeps.&lt;br /&gt;&lt;br /&gt;It didn't work though, so he raised it to 100ms and then 1000ms, to no avail.  The test still failed.&lt;br /&gt;&lt;br /&gt;Next, he raised the 2 seconds sleep to 10 seconds.  It didn't work either.  So he turned autovacuum off, and reran the test.  Guess what?  The test still failed!!&lt;br /&gt;&lt;br /&gt;Then he checked the test manually, and it turned out that the pgstat views show the table to always have counters on 0!&lt;br /&gt;&lt;br /&gt;We haven't been able to pinpoint the exact cause, but now it's looking like the autovacuum change wasn't the culprit; maybe it was the autovacuum change plus something else.  We're not sure.&lt;br /&gt;&lt;br /&gt;Still investigating ...</description>
    </item>
    <item>
      <pubDate>Sat, 20 Jan 2007 01:06:43 GMT</pubDate>
      <title>20 Jan 2007</title>
      <link>http://www.advogato.org/person/alvherre/diary.html?start=10</link>
      <guid>http://www.advogato.org/person/alvherre/diary.html?start=10</guid>
      <description>
&lt;p&gt;&lt;br /&gt;&lt;p&gt;It looks like my &lt;a href="http://www.flickr.com/photos/alvherre/sets/72157594489213544/" &gt;McNaught comet photos&lt;/a&gt; now made into NowPublic: &lt;a href="http://www.nowpublic.com/the_comet_tail_seen_round_the_world" &gt;The comet tail seen round the world&lt;/a&gt;.  Fact is, I was pretty impressed when I saw it.  It was certainly quite amazing.&lt;br /&gt;&lt;br /&gt;On other news, I managed to get the whole &lt;a href="http://buildfarm.postgresql.org" &gt;buildfarm&lt;/a&gt; in red for several hours with a pg_regress patch.  The fix to the problem was quite simple, but since I'm spending some time researching a new appt. to move to, it took longer than expected.  Sadly, all the Windows machines are still failing a test with amazing reproducibility.  We need some Windows hacker involved in order to fix it though ... the failure is pretty bizarre.</description>
    </item>
  </channel>
</rss>
