> Bruce Momjian <maillist@candle.pha.pa.us> writes:
> > If you delete the file at the end of initdb, is it recreated with the
> > proper values?
>
> OK, let's try it ...
>
> Sure enough, if I delete the file and then start a new backend,
> it's rebuilt. Not only that, it's rebuilt with the *correct* index-
> size values read from pg_class! And cost_index then gets that data
> passed to it.
>
> So this code actually is able to go out and read the database, it just
> doesn't want to ;-)
>
> I'd say this whole mechanism is unnecessary; we should just build
> the data on-the-fly the way it's done in write_irels(), and eliminate
> all the file reading and writing code in init_irels and write_irels.
> The only thing it could possibly be doing for us is saving some backend
> startup time, but I'm not able to measure any difference when I delete
> the init file.
>
> I'll work on that tomorrow, unless I hear squawks of outrage from
> someone who remembers what this code was for.
Hmm. If you can get it to work without the file, great, or you could
just delete the file when vacuum is performed, so the next backend
recreates the file. That would work too.
-- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026