Re: SIGSEGV taken on 8.1 during dump/reload - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: SIGSEGV taken on 8.1 during dump/reload
Date
Msg-id 200511121228.48627.peter_e@gmx.net
Whole thread Raw
In response to Re: SIGSEGV taken on 8.1 during dump/reload  (Gregory Maxwell <gmaxwell@gmail.com>)
Responses Re: SIGSEGV taken on 8.1 during dump/reload
List pgsql-hackers
Gregory Maxwell wrote:
> So it turned out that he didn't... Is this a sign that we need to
> include a versioning symbol in SOs so we can give a nice clear error
> message "module foo compiled for PostgreSQL 8.0.2 this is PostgreSQL
> 8.1."

I think this would rarely work in practice.  For example, during the 
elog->ereport transition, any module compiled against the wrong server 
would immediately get an "unresolved symbol: elog/ereport" before you 
can run your nice version check.  I had thought about this issue back 
then because it was an extrememly common occurrence; then only thing I 
could think of is that you trick the dynamic loader to first reference 
a symbol with an obvious name like 
"if_you_see_this_in_an_error_message_you_have_a_version_mismatch".  
However, this would likely be platform dependent and maybe confuse 
users even more.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/


pgsql-hackers by date:

Previous
From: Yann Michel
Date:
Subject: CONNECT BY PRIOR
Next
From: Martijn van Oosterhout
Date:
Subject: Re: SIGSEGV taken on 8.1 during dump/reload