Re: ISBN range table - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: ISBN range table
Date
Msg-id CA+hUKGKkt5AcwmkAskvpx7YtXOTq0ntxA3wVa=3YFQNqMkaDVw@mail.gmail.com
Whole thread
In response to ISBN range table  (Thomas Munro <thomas.munro@gmail.com>)
Responses Re: ISBN range table
List pgsql-hackers
On Sun, Apr 12, 2026 at 11:37 PM Thomas Munro <thomas.munro@gmail.com> wrote:
> A recent-ish thread[1] made me wonder what that big table of data
> does, and why we have a random update every decade or so, and I came
> up with the attached.

Fixed a couple of typos and added as commitfest #6676.  The idea is
that update_isbn.py would become another periodic update task, similar
to Unicode, contrib/unaccent and the IANA timezone stuff.  I suppose
running it only for major releases would be enough for such
non-critical data.  There are also some other much smaller tables in
this contrib module, but they don't seem to be moving (?) so I didn't
look at them.

I'm not volunteering today, but a passing thought I had while browsing
this complicated code full of scary pointer arithmetic is that it
might be an idea to try to describe the entire EAN3 number space in a
much simpler single binary-searchable array that maps uint64_t ranges
to TO_CHAR format strings, with entries that look something like:

 {9780037000000, 9780638999999, "999-9-99-999999-9"}

Attachment

pgsql-hackers by date:

Previous
From: Chao Li
Date:
Subject: Re: Bug: Rule actions see wrong values for generated columns (NEW.gen reads OLD value)
Next
From: Chao Li
Date:
Subject: Re: tablecmds: fix bug where index rebuild loses replica identity on partitions