[Pkg-postgresql-public] Bug#843774: [pgadmin3] pgadmin segfault at startup with postresql-9.6 installed and a connexion configured in .pgadmin3

Landry MINOZA lminoza at mgi.fr
Wed Nov 9 12:48:25 UTC 2016


Package: pgadmin3
Version: 1.22.1-2
Severity: important
Tags: patch

--- Please enter the report below this line. ---pgadmin3 segfaults at
starup in pgConn::GetStatus (db/pgConn.cpp:1011) when .pgadmin3 exists
(minimal one pointing to localhost attached) and have a server
connexion configured.According to those threads [1][2], it seems that
compiling with -fno-delete-null-pointer-checks on GCC6 corrects the
problem.Here is the backtrace:gdb --quiet pgadmin3     Reading symbols
from pgadmin3...Reading symbols from /usr/lib/debug/.build-
id/5f/5de51f2d0bf14d6b6f50a56a755a95b68b3512.debug...done.done.(gdb)
runStarting program: /usr/bin/pgadmin3 [Thread debugging using
libthread_db enabled]Using host libthread_db library "/lib/x86_64-
linux-gnu/libthread_db.so.1".13:46:32: Warning: Mismatch between the
program and library build versions detected.The library used 3.0
(wchar_t,compiler with C++ ABI 1009,wx containers,compatible with
2.8),and your program used 3.0 (wchar_t,compiler with C++ ABI 1010,wx
containers,compatible with 2.8).13:46:33: Debug: Adding duplicate image
handler for 'PNG file'
Program received signal SIGSEGV, Segmentation fault.pgConn::GetStatus
(this=0x0) at db/pgConn.cpp:10111011	db/pgConn.cpp: Aucun
fichier ou dossier de ce type.(gdb) bt#0  pgConn::GetStatus (this=0x0)
at db/pgConn.cpp:1011#1  0x0000555555ac26e1 in
pluginUtilityFactory::CheckEnable (this=0x555557137970,
obj=0x5555572748d0) at frm/plugins.cpp:383#2  0x0000555555db770a in
menuFactoryList::CheckMenu (this=0x5555571165f0, obj=obj at entry=0x555557
2748d0, menubar=0x5555571b7c20, toolbar=0x555557116610) at
utils/factory.cpp:266#3  0x00005555559d55ba in frmMain::setDisplay (thi
s=this at entry=0x5555570c20b0, data=0x5555572748d0, props=props at entry=0x0
, sqlbox=sqlbox at entry=0x0) at frm/events.cpp:600#4  0x00005555559d9202
in frmMain::execSelChange (this=this at entry=0x5555570c20b0, item=...,
currentNode=<optimized out>) at
frm/events.cpp:512#5  0x00005555559d9945 in frmMain::OnExpand
(this=0x5555570c20b0, event=...) at
frm/events.cpp:277#6  0x00007ffff5b8e59e in
wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&,
wxEvent&) const () from /usr/lib/x86_64-linux-gnu/libwx_baseu-
3.0.so.0#7  0x00007ffff5d14a87 in
wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&,
wxEvtHandler*, wxEvent&) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-
3.0.so.0#8  0x00007ffff5d14b7b in
wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0#9  0x00007ffff5d14f2b in
wxEvtHandler::TryHereOnly(wxEvent&) () from /usr/lib/x86_64-linux-
gnu/libwx_baseu-3.0.so.0#10 0x00007ffff5d14d33 in
wxEvtHandler::DoTryChain(wxEvent&) () from /usr/lib/x86_64-linux-
gnu/libwx_baseu-3.0.so.0#11 0x00007ffff5d15015 in
wxEvtHandler::ProcessEvent(wxEvent&) () from /usr/lib/x86_64-linux-
gnu/libwx_baseu-3.0.so.0#12 0x00007ffff68b46c8 in
wxWindowBase::TryAfter(wxEvent&) () from /usr/lib/x86_64-linux-
gnu/libwx_gtk2u_core-3.0.so.0#13 0x00007ffff692205b in
wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) () from
/usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-3.0.so.0#14
0x00007ffff6939703 in wxGenericTreeCtrl::Expand(wxTreeItemId const&) ()
from /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-3.0.so.0#15
0x0000555555a41d92 in frmMain::frmMain (this=0x5555570c20b0, title=...)
at frm/frmMain.cpp:239#16 0x000055555575f02c in pgAdmin3::OnInit
(this=0x555556565310) at pgAdmin3.cpp:786#17 0x00007ffff5c22332 in
wxEntry(int&, wchar_t**) () from /usr/lib/x86_64-linux-gnu/libwx_baseu-
3.0.so.0#18 0x00005555556f9ae2 in main (argc=<optimized out>,
argv=<optimized out>) at pgAdmin3.cpp:126(gdb) quitA debugging session
is active.
	Inferior 1 [process 19364] will be killed.
Quit anyway? (y or n) y

I tried to modify debian/rules with:override_dh_auto_build:	$(MA
KE) CFLAGS+="-g -fno-delete-null-pointer-checks" CXXFLAGS+="-g -fno-
delete-null-pointer-checks"
But was not able to compile from source package cause of the following
error:/postgresql -I/usr/include/postgresql/9.6/server
-I/usr/include/postgresql -DHAVE_CONNINFO_PARSE -I/usr/lib/x86_64-
linux-gnu/wx/include/gtk2-unicode-3.0 -I/usr/include/wx-3.0
-D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXGTK__ -DEMBED_XRC
-I/usr/include/libxml2 -I/usr/include/libxml2 -DHAVE_OPENSSL_CRYPTO
-DLIBSSH2_OPENSSL  -g -O2 -fdebug-prefix-
map=/home/landry/Private/pgadmin3-1.22.1=. -fstack-protector-strong
-Wformat -Werror=format-security -g -fno-delete-null-pointer-checks -c
-o libssh2/crypt.o libssh2/crypt.clibssh2/crypt.c:70:25: error: field
‘h’ has incomplete type     _libssh2_cipher_ctx h;

[1]: https://bugzilla.redhat.com/show_bug.cgi?id=1335043[2]:
https://bugzilla.redhat.com/show_bug.cgi?id=1344917#c1

--- System information. ---
Architecture: 
Kernel:       Linux 4.8.0-1-amd64

Debian Release: stretch/sid
  500 unstable        httpredir.debian.org 
  500 testing         httpredir.debian.org 
  500 stable          security.debian.org 
  500 stable          repo.skype.com 
  500 stable          httpredir.debian.org 
  101 experimental    httpredir.debian.org 

--- Package information. ---
Depends                    (Version) | Installed
====================================-+-================
pgadmin3-data           (= 1.22.1-2) | 1.22.1-2
libc6                      (>= 2.15) | 
libgcc1                   (>= 1:3.0) | 
libpq5                     (>= 8.4~) | 
libssl1.0.2              (>= 1.0.2d) | 
libstdc++6                  (>= 5.2) | 
libwxbase3.0-0v5     (>= 3.0.2+dfsg) | 
libwxgtk3.0-0v5      (>= 3.0.2+dfsg) | 
libxml2                   (>= 2.7.4) | 
libxslt1.1               (>= 1.1.25) | 
zlib1g                  (>= 1:1.1.4) | 


Recommends             (Version) | Installed
================================-+-===========
pgagent                          | 3.4.1-3
postgresql-client                | 9.6+177


Suggests                (Version) | Installed
=================================-+-===========
postgresql-contrib                | 

-- 


Landry MINOZA

MGI Sud-Ouest
Chef de projet technique Linux et réseaux

E-mail : lminoza at mgi.fr


 Tél :
01 45 44 54 10






MGI France : 11 rue de Téhéran - 75008 Paris
|
RCS: Paris B 382 770 584
|
www.mgi.fr

MGI SO :
281 route d'Espagne - 31100 Toulouse
|
RCS: Toulouse B 421 125 816
|
www.mgi.fr

MGI Suisse :
5 avenue de Rothorn - CH3960 Sierre
|
TVA 517-269
|
www.mgiconsultants.ch
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-postgresql-public/attachments/20161109/cb9eaaa2/attachment-0001.html>
-------------- next part --------------
PostgreSQLPath=/usr/bin
EnterpriseDBPath=
GreenplumDBPath=
PostgreSQLHelpPath=http://www.postgresql.org/docs/current/static/
EnterpriseDBHelpPath=http://www.enterprisedb.com/docs/en/current/server/
GreenplumDBHelpPath=http://gpdb.docs.pivotal.io/
SlonyHelpPath=http://www.slony.info/documentation/
LastDatabase=postgres
LastPort=5432
LastSSL=-1
LastUsername=postgres
[frmHint]
Left=398
Top=123
Width=570
Height=548
[Properties]
[Properties/Server]
Left=421
Top=90
Width=525
Height=614
[Hints]
saving-passwords=Suppress
[Updates]
pgsql-Versions=9.6
UseSSL=true
[Servers]
Count=1
[Servers/1]
Server=localhost
HostAddr=
Description=localhost
Service=
ServiceID=
DiscoveryID=
Port=5432
StorePwd=true
Rolename=
Restore=true
Database=postgres
Username=admin
LastDatabase=
LastSchema=
DbRestriction=
Colour=white
SSL=-1
Group=Serveurs
SSLCert=
SSLKey=
SSLRootCert=
SSLCrl=
SSLCompression=true
SSHTunnel=false
TunnelHost=
TunnelUserName=
TunnelModePwd=true
PublicKeyFile=
IdentityFile=
TunnelPort=22


More information about the Pkg-postgresql-public mailing list