Function keys cause psql to segfault
If I'm in psql (via putty, from WinXP to Redhat) and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit. Not that I'm in the habit
of entering function keys while in psql - I
accidentally hit one while entering numbers (lost a
fair amount of history).
I just tried it using WinXP's command prompt and none
of the function keys cause psql to segfault.
CSN
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
CSN wrote:
If I'm in psql (via putty, from WinXP to Redhat) and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit. Not that I'm in the habit
of entering function keys while in psql - I
accidentally hit one while entering numbers (lost a
fair amount of history).
My guess is that those send a break or some control sequence. od -c
might show you what is being output.
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
Here's what 'od -c' shows for F1-4:
^[OP^[OQ^[OR^[OS
CSN
--- Bruce Momjian <pgman@candle.pha.pa.us> wrote:
CSN wrote:
If I'm in psql (via putty, from WinXP to Redhat)
and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit. Not that I'm in thehabit
of entering function keys while in psql - I
accidentally hit one while entering numbers (losta
fair amount of history).
My guess is that those send a break or some control
sequence. od -c
might show you what is being output.-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com
Bruce Momjian <pgman@candle.pha.pa.us> writes:
CSN wrote:
If I'm in psql (via putty, from WinXP to Redhat) and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit.
My guess is that those send a break or some control sequence. od -c
might show you what is being output.
Try watching the psql process with strace in another terminal window.
If Bruce's theory is correct (and it sounds good to me) then you should
be able to see a signal being delivered to psql.
regards, tom lane
Tom Lane wrote:
Bruce Momjian <pgman@candle.pha.pa.us> writes:
CSN wrote:
If I'm in psql (via putty, from WinXP to Redhat) and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit.My guess is that those send a break or some control sequence. od -c
might show you what is being output.Try watching the psql process with strace in another terminal window.
If Bruce's theory is correct (and it sounds good to me) then you should
be able to see a signal being delivered to psql.
Also, try the function keys in another command-line application and see
if that exits too.
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
I did 'strace psql dbname' and this was the output
after hitting F1:
read(0, "\33", 1) = 1
read(0, "O", 1) = 1
read(0, "P", 1) = 1
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
CSN
--- Tom Lane <tgl@sss.pgh.pa.us> wrote:
Bruce Momjian <pgman@candle.pha.pa.us> writes:
CSN wrote:
If I'm in psql (via putty, from WinXP to Redhat)
and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit.My guess is that those send a break or some
control sequence. od -c
might show you what is being output.
Try watching the psql process with strace in another
terminal window.
If Bruce's theory is correct (and it sounds good to
me) then you should
be able to see a signal being delivered to psql.regards, tom lane
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com
Hmm, all I could think of was perl and php - hitting
F1-4 just caused these chars to be displayed (the
interpreters didn't exit):
^[OP^[OQ^[OR^[OS
CSN
--- Bruce Momjian <pgman@candle.pha.pa.us> wrote:
Tom Lane wrote:
Bruce Momjian <pgman@candle.pha.pa.us> writes:
CSN wrote:
If I'm in psql (via putty, from WinXP to
Redhat) and
hit F1-4 (F5+ just display a ~), psql will
segmentation fault and exit.My guess is that those send a break or some
control sequence. od -c
might show you what is being output.
Try watching the psql process with strace in
another terminal window.
If Bruce's theory is correct (and it sounds good
to me) then you should
be able to see a signal being delivered to psql.
Also, try the function keys in another command-line
application and see
if that exits too.-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com
CSN <cool_screen_name90001@yahoo.com> writes:
I did 'strace psql dbname' and this was the output
after hitting F1:
read(0, "\33", 1) = 1 read(0, "O", 1) = 1 read(0, "P", 1) = 1 --- SIGSEGV (Segmentation fault) @ 0 (0) ---
Hmm ... I don't have an F1 key, but I typed escape-O-P at a psql
running under Linux, and got this:
Process 28978 attached - interrupt to quit
read(0, "\33", 1) = 1
read(0, "O", 1) = 1
read(0, "P", 1) = 1
write(2, "\7", 1) = 1
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
read(0,
So it seems fine here. I'm wondering if there's something broken
about your machine's readline library.
regards, tom lane
On Sun, 25 Sep 2005 20:00:03 -0700 (PDT), CSN <cool_screen_name90001@yahoo.com> wrote:
I did 'strace psql dbname' and this was the output
after hitting F1:read(0, "\33", 1) = 1 read(0, "O", 1) = 1 read(0, "P", 1) = 1 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++
esc O P is PF1 on a VT100/VT200. Does it make any difference if you
change the terminal emulation in putty or the term setting in redhat?
klint.
+---------------------------------------+-----------------+
: Klint Gore : "Non rhyming :
: EMail : kg@kgb.une.edu.au : slang - the :
: Snail : A.B.R.I. : possibilities :
: Mail University of New England : are useless" :
: Armidale NSW 2351 Australia : L.J.J. :
: Fax : +61 2 6772 5376 : :
+---------------------------------------+-----------------+
It looks like I had readline 4.3 installed. I just
installed readline 5.0 - the F1-4 keys still cause
psql to segfault. (AFAIK I don't need to recompile
postgres for psql to use the newly installed
readline).
CSN
--- Tom Lane <tgl@sss.pgh.pa.us> wrote:
CSN <cool_screen_name90001@yahoo.com> writes:
I did 'strace psql dbname' and this was the output
after hitting F1:read(0, "\33", 1) = 1 read(0, "O", 1) = 1 read(0, "P", 1) = 1 --- SIGSEGV (Segmentation fault) @ 0 (0) ---Hmm ... I don't have an F1 key, but I typed
escape-O-P at a psql
running under Linux, and got this:Process 28978 attached - interrupt to quit
read(0, "\33", 1) = 1
read(0, "O", 1) = 1
read(0, "P", 1) = 1
write(2, "\7", 1) = 1
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
read(0,So it seems fine here. I'm wondering if there's
something broken
about your machine's readline library.regards, tom lane
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
Hmm, in putty (Terminal->Keyboard) I changed "the
function keys and keypad" from "ESC[n~" to "Linux".
Hitting F1-5 in psql outputs "ABCDE" - no segfaults!
Setting it to "Xterm R6" also results in function keys
1-4 causing segfaults (there are also options for
"VT400", "VT100+", and "SCO" - haven't tried those).
Thanks,
CSN
--- Klint Gore <kg@kgb.une.edu.au> wrote:
On Sun, 25 Sep 2005 20:00:03 -0700 (PDT), CSN
<cool_screen_name90001@yahoo.com> wrote:I did 'strace psql dbname' and this was the output
after hitting F1:read(0, "\33", 1) = 1 read(0, "O", 1) = 1 read(0, "P", 1) = 1 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++esc O P is PF1 on a VT100/VT200. Does it make any
difference if you
change the terminal emulation in putty or the term
setting in redhat?klint.
+---------------------------------------+-----------------+
: Klint Gore : "Non
rhyming :
: EMail : kg@kgb.une.edu.au : slang -
the :
: Snail : A.B.R.I. :
possibilities :
: Mail University of New England : are
useless" :
: Armidale NSW 2351 Australia : L.J.J.
:
: Fax : +61 2 6772 5376 :
:
+---------------------------------------+-----------------+
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com
CSN <cool_screen_name90001@yahoo.com> writes:
Hmm, in putty (Terminal->Keyboard) I changed "the
function keys and keypad" from "ESC[n~" to "Linux".
Hitting F1-5 in psql outputs "ABCDE" - no segfaults!
Setting it to "Xterm R6" also results in function keys
1-4 causing segfaults (there are also options for
"VT400", "VT100+", and "SCO" - haven't tried those).
Sounds like it might be useful to compile psql with debugging symbols
and get a backtrace from the crash.
-Doug
Douglas McNaught wrote:
CSN <cool_screen_name90001@yahoo.com> writes:
Hmm, in putty (Terminal->Keyboard) I changed "the
function keys and keypad" from "ESC[n~" to "Linux".
Hitting F1-5 in psql outputs "ABCDE" - no segfaults!
Setting it to "Xterm R6" also results in function keys
1-4 causing segfaults (there are also options for
"VT400", "VT100+", and "SCO" - haven't tried those).Sounds like it might be useful to compile psql with debugging symbols
and get a backtrace from the crash.
Just an oddball theory:
Do we really know what data is being sent with the function keys from
XP? If Putty is doing passthrough encoding, this might be the problem.
The od output doesn't look right to me. One should try:
od -c
F1F2F3F4 ctrl-D
When I try this on a gterm, I get:
^[OQ^[OR^[OS0000000 033 O Q 033 O R 033 O S
0000011
My guess is that Windows is sending some data (maybe embedded nulls) in
the data from the Fn key sequences that is causing Readline to crash.
In that case it would be a readline bug not something correctable in
psql I'm afraid.
Best Wishes,
Chris Travers
Metatron Technology Consultingp
Show quoted text
-Doug
---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?