Discussion:
Build fails from RSH session, but not interactive SSH session - VMS 8.3 FreeAXP.
(too old to reply)
John E. Malmberg
2017-03-16 13:04:39 UTC
Permalink
Raw Message
I have been trying to chase down a weird problem.

On just one of my systems, a VMS 8.3 system running on FreeAXP, I am
using it as a Jenkins builder.

Jenkins refuses to ssh to the VMS 8.3 system, so I am using "rsh -l
$USER" to launch the build script.

When I run the build script from the same account from an SSH session,
the build succeeds.

When I run the build script from Jenkins, it fails running GNV Make with
an error code of 2. I have not been able to get a better status from
GNV Make as to what failed.

I suspected a quota issues as there is an extra process in the process
tree when run from RSH.

Looking at process accounting does not show that a quota was reached.

I have increased several of the quotas anyway, prclm, Bytlm, and
Pgflquo, and no change in behavior.

The GNV Make is running under GNV Bash.

This same build runs fine on VMS 8.4 AXP and IA64. For those Jenkins
can use SSH to connect to the VMS builders.

Regards,
-John
***@qsl.net_work
abrsvc
2017-03-16 13:18:07 UTC
Permalink
Raw Message
How about FILLM? Are you close to the limit of open files?

Dan
John E. Malmberg
2017-03-16 22:40:40 UTC
Permalink
Raw Message
Post by abrsvc
How about FILLM? Are you close to the limit of open files?
FILLM was 200, bumped it to 300.

No joy.

Regards,
-John
Stephen Hoffman
2017-03-16 15:31:20 UTC
Permalink
Raw Message
...ssh to the VMS 8.3 system...
...To recap my understanding, you're hosting using FreeAXP for both
OpenVMS V8.3 and OpenVMS V8.4, and that the emulator and network
configurations are identical other than the OpenVMS versions. and that
the V8.3 rsh is working and ssh is not, and with V8.4 both rsh and ssh
are working.

I think TCP/IP Services V5.7 with current patches will install on
OpenVMS V8.3 — there were ssh updates in V5.7 and its patches — and
that might be worth a try here.

But it'll be easier to just end support for OpenVMS V8.3 and move on.
The V8.3 release is more than a decade old now, and HPE is no longer
providing any new fixes for it; it's "MPS w/o SE" (e.g. mostly dead),
et al.

Hobbyists have had access to OpenVMS V8.4 with a functional UPDATE
patch, and hopefully VSI gets their hobbyist program sorted out. No
reason for hobbyists not to update to V8.4.

As for figuring out what's wrong here, you're headed for tcpdump on a
mirrored switch port, or some other analogous network monitoring tool.
Maybe some clues from the start or the end of the connection?
--
Pure Personal Opinion | HoffmanLabs LLC
Henry Crun
2017-03-16 16:34:43 UTC
Permalink
Raw Message
...ssh to the VMS 8.3 system...
... snip ...
Hobbyists have had access to OpenVMS V8.4 with a functional UPDATE patch, and
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Oh please, WHERE??
(running Personal Alpha VMS V8.3, several years unpatched...)
hopefully VSI gets their hobbyist program sorted out. No reason for hobbyists
not to update to V8.4.
...snip ...
--
Mike R.
Home: http://alpha.mike-r.com/
QOTD: http://alpha.mike-r.com/qotd.php
No Micro$oft products were used in the URLs above, or in preparing this message.
Recommended reading: http://www.catb.org/~esr/faqs/smart-questions.html#before
and: http://alpha.mike-r.com/jargon/T/top-post.html
Missile address: N31.7624/E34.9691
Stephen Hoffman
2017-03-16 17:07:57 UTC
Permalink
Raw Message
Post by Henry Crun
Hobbyists have had access to OpenVMS V8.4 with a functional UPDATE patch, and
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Oh please, WHERE??
(running Personal Alpha VMS V8.3, several years unpatched...)
Are you having trouble gaining access to this download via the Hobbyist
licensing email contact registration path?

One of the entries for the hobbyist email registration path was at
http://plato.ccsscorp.com/hobbyist_registration.php

If it hasn't changed, the FAQ that was provided with the hobbyist PAK
registration email message explained how to get access to VAX, Alpha
and Itanium kits. Given it's been ~three years since I've been
through that hobbyist licensing loop, it's certainly possible that the
downloads HPE had offered have been changed or maybe even discontinued.

VSI folks have indicated that they plan to have a Hobbyist program
available "soon", so hopefully this gets sorted out eventually.
--
Pure Personal Opinion | HoffmanLabs LLC
Simon Clubley
2017-03-16 18:18:37 UTC
Permalink
Raw Message
Post by Stephen Hoffman
VSI folks have indicated that they plan to have a Hobbyist program
available "soon", so hopefully this gets sorted out eventually.
The VSI definition of "soon" tends to be a little different from
the definition used by everyone else. :-) I've just assumed VSI are
living within a time dilation field...

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world
IanD
2017-03-19 04:35:47 UTC
Permalink
Raw Message
Post by Simon Clubley
Post by Stephen Hoffman
VSI folks have indicated that they plan to have a Hobbyist program
available "soon", so hopefully this gets sorted out eventually.
The VSI definition of "soon" tends to be a little different from
the definition used by everyone else. :-) I've just assumed VSI are
living within a time dilation field...
Simon.
--
Microsoft: Bringing you 1980s technology to a 21st century world
lol

Yes, now that 8.4 VSI flavor is out, it sure would be nice to get that under a hobbyist program. I would even happily pay something towards it without support on the same conditions as the hobbyist licence is released under (no commercial use bla bla bla)

Since there are no Itanium emulators around then an Alpha is your only option if you want the latest.

I used FreeAXP for a while but then tried EMUAlpha and was really impressed. EmuVM however have withdrawn their free emulator promising to release one 'soon'. 1 1/2 years later still nothing.

I have given up trying to guess what 'soon' really means. Obviously to them it means something vastly different to what I think it means.

Maybe this time warp thing and hobbyist/personal VMS related thing are really a universal constant because it sure seems that as soon as something falls under the hobbyist/personal influence, all time slows down dramatically ;-)

Will VMS-x86-64 be released under the Hobbyist program?
I think I did ask this once upon a time, I don't remember seeing a response.
Simon Clubley
2017-03-20 00:18:20 UTC
Permalink
Raw Message
Post by IanD
I have given up trying to guess what 'soon' really means. Obviously to them
it means something vastly different to what I think it means.
I'll take your comment as an opportunity (:-)) to remind VSI in a friendly
way that taking 6 months (and counting) to decide to put a formal and
secure VMS security reporting mechanism on your website doesn't qualify
as "soon". :-)

Simon.
--
Simon Clubley, ***@remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980s technology to a 21st century world
BillPedersen
2017-03-17 20:28:25 UTC
Permalink
Raw Message
Post by Stephen Hoffman
Post by Henry Crun
Hobbyists have had access to OpenVMS V8.4 with a functional UPDATE patch, and
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Oh please, WHERE??
(running Personal Alpha VMS V8.3, several years unpatched...)
Are you having trouble gaining access to this download via the Hobbyist
licensing email contact registration path?
One of the entries for the hobbyist email registration path was at
http://plato.ccsscorp.com/hobbyist_registration.php
If it hasn't changed, the FAQ that was provided with the hobbyist PAK
registration email message explained how to get access to VAX, Alpha
and Itanium kits. Given it's been ~three years since I've been
through that hobbyist licensing loop, it's certainly possible that the
downloads HPE had offered have been changed or maybe even discontinued.
VSI folks have indicated that they plan to have a Hobbyist program
available "soon", so hopefully this gets sorted out eventually.
--
Pure Personal Opinion | HoffmanLabs LLC
Yes, the above URL works and does send a message to HPE who then turn around, generate the necessary PAKs and provide you a link to download media images.

It has been running that way for several years. As well as the updated versions of VMS and some patches. Not the most current patches but BETTER than NONE.

Bill.
David Froble
2017-03-16 16:53:28 UTC
Permalink
Raw Message
Post by Stephen Hoffman
...ssh to the VMS 8.3 system...
...To recap my understanding, you're hosting using FreeAXP for both
OpenVMS V8.3 and OpenVMS V8.4, and that the emulator and network
configurations are identical other than the OpenVMS versions. and that
the V8.3 rsh is working and ssh is not, and with V8.4 both rsh and ssh
are working.
I think TCP/IP Services V5.7 with current patches will install on
OpenVMS V8.3 — there were ssh updates in V5.7 and its patches — and that
might be worth a try here.
Yes, this may be a place to look. I seem to remember that I could not get SSH
to work properly until I installed the latest TCP/IP. V5.7-ECO5 I believe.
It's been a while. The ECO5 was not patches, it is a complete distribution.
John E. Malmberg
2017-03-16 23:07:11 UTC
Permalink
Raw Message
Post by Stephen Hoffman
...ssh to the VMS 8.3 system...
...To recap my understanding, you're hosting using FreeAXP for both
OpenVMS V8.3 and OpenVMS V8.4, and that the emulator and network
configurations are identical other than the OpenVMS versions. and that
the V8.3 rsh is working and ssh is not, and with V8.4 both rsh and ssh
are working.
DS-10 66MHZ for running VMS 8.4.

FreeAXP on a VM on in Virtualbox currently on a laptop for running VMS
8.3. Worked much better on the MacBook that I had to give up.

SSH works on VMS 8.3 and the TCP/IP 5.6 from most everything except from
a Linux Jenkins build agent session. For that I have to use RSH.
Post by Stephen Hoffman
I think TCP/IP Services V5.7 with current patches will install on
OpenVMS V8.3 — there were ssh updates in V5.7 and its patches — and that
might be worth a try here.
That might be an option.
Post by Stephen Hoffman
But it'll be easier to just end support for OpenVMS V8.3 and move on.
The V8.3 release is more than a decade old now, and HPE is no longer
providing any new fixes for it; it's "MPS w/o SE" (e.g. mostly dead), et
al.
Unless I see feedback that anyone cares about VMS 8.3 GNV kits, I am
seriously considering taking that option. It takes quite a while to
build on that slow emulator.
Post by Stephen Hoffman
Hobbyists have had access to OpenVMS V8.4 with a functional UPDATE
patch, and hopefully VSI gets their hobbyist program sorted out. No
reason for hobbyists not to update to V8.4.
Not sure how up to date the update patches are.
At the bottom of this page, I have posted screenshots of what was
available last year.

https://sourceforge.net/p/vms-ports/wiki/VMSInstallation/
Post by Stephen Hoffman
As for figuring out what's wrong here, you're headed for tcpdump on a
mirrored switch port, or some other analogous network monitoring tool.
Maybe some clues from the start or the end of the connection?
Network is not the issue I am trying to solve. I am trying to play the
game of guess which quota caused a recursive make procedure to crater.

Regards,
-John
***@qsl.net_work
Stephen Hoffman
2017-03-16 23:29:15 UTC
Permalink
Raw Message
Post by John E. Malmberg
Post by Stephen Hoffman
As for figuring out what's wrong here, you're headed for tcpdump on a
mirrored switch port, or some other analogous network monitoring tool.
Maybe some clues from the start or the end of the connection?
Network is not the issue I am trying to solve. I am trying to play the
game of guess which quota caused a recursive make procedure to crater.
Last few times I've had this tussle, it's been network dreck or
down-revision software, and not process quota-level dreck. Sometimes
in the networking, sometimes in the VM. Sometimes with the
down-revision ssh support that's present prior to V5.7 ECO-recent, and
I've chased several of those cases. If you really think it's process
quotas here, then increment anything I/O related by 1.5x to 2x —
running with larger quotas is usually somewhere between free and cheap
— and try the tests again. Managing and particularly troubleshooting
process quotas has unfortunately been a mess on OpenVMS since... well,
since the design was created and implemented, and — due to too-few
usability enhancements and the inevitable problems secondary to
ensuring compatibility — quota errors are always "fun" to work with.
But I'd still suspect network-level or down-revision software may be in
play, even though the connection works in some contexts but not others.
Batch ssh support has been wonky in older releases.
--
Pure Personal Opinion | HoffmanLabs LLC
j***@yahoo.co.uk
2017-03-17 10:33:24 UTC
Permalink
Raw Message
Post by John E. Malmberg
I have been trying to chase down a weird problem.
On just one of my systems, a VMS 8.3 system running on FreeAXP, I am
using it as a Jenkins builder.
Jenkins refuses to ssh to the VMS 8.3 system, so I am using "rsh -l
$USER" to launch the build script.
When I run the build script from the same account from an SSH session,
the build succeeds.
When I run the build script from Jenkins, it fails running GNV Make with
an error code of 2. I have not been able to get a better status from
GNV Make as to what failed.
I suspected a quota issues as there is an extra process in the process
tree when run from RSH.
Looking at process accounting does not show that a quota was reached.
I have increased several of the quotas anyway, prclm, Bytlm, and
Pgflquo, and no change in behavior.
The GNV Make is running under GNV Bash.
This same build runs fine on VMS 8.4 AXP and IA64. For those Jenkins
can use SSH to connect to the VMS builders.
Regards,
-John
Things I might look at, in the general (ie not specifically
GNV) case, in addition to existing suggestions:

Accounting - VMS process accounting records *may* sometimes shed
light on which quotas are insufficient.

Symbol and logical definitions - what differences exist
(intended or otherwise) between the environment that works
and the environment that doesn't? Systemwide and user-specific
login scripts are traditional places to look.

Error code 2 in errno.h is (usually?) ENOENT, ie no such file
or directory. Any hints there?

Apologies if this stuff is obvious already or is irrelevant in
your particular picture.
Steven Schweda
2017-03-17 13:15:40 UTC
Permalink
Raw Message
Post by j***@yahoo.co.uk
Error code 2 in errno.h is (usually?) ENOENT, ie no such
file or directory. Any hints there?
Except that errno is not normally an exit status. My guess
would be from <stdlib.h>:

# define EXIT_FAILURE 0x10000002

That is, 2, with no message. Or, with _POSIX_EXIT defined,
anyone could do an exit(2), which would be pretty generic.
Post by j***@yahoo.co.uk
[...] I have not been able to get a better status from
GNV Make as to what failed.
Not even a clue in some log file as to what it was doing
at the time? I don't understand how it's possible to have no
more info.
j***@yahoo.co.uk
2017-03-17 14:10:39 UTC
Permalink
Raw Message
Post by Steven Schweda
Post by j***@yahoo.co.uk
Error code 2 in errno.h is (usually?) ENOENT, ie no such
file or directory. Any hints there?
Except that errno is not normally an exit status. My guess
# define EXIT_FAILURE 0x10000002
That is, 2, with no message. Or, with _POSIX_EXIT defined,
anyone could do an exit(2), which would be pretty generic.
Post by j***@yahoo.co.uk
[...] I have not been able to get a better status from
GNV Make as to what failed.
Not even a clue in some log file as to what it was doing
at the time? I don't understand how it's possible to have no
more info.
Indeed errno isn't traditionally used as exit status. In
software of mixed parentage, strange things may happen,
where one tradition of error handling believes "the red light
being on should be sufficient to enable the user to work out
what's wrong". Or its 'modern' equivalent, "Windows could not
complete the requested operation" (or equivalent).

It's almost as though perror() and friends (GetLastError()?)
never existed in these people's worlds.


The other world, perhaps more familiar to readers here,
holds that not only should all conceivable underlying error
conditions have distinct error codes, additionally the
meanings of the codes should be documented, together with
likely recovery procedures, and that application and
subsystem code should reflect these capabilities.

Where the two worlds meet, who knows what happens... :)
Steven Schweda
2017-03-17 21:17:45 UTC
Permalink
Raw Message
Post by j***@yahoo.co.uk
The other world, perhaps more familiar to readers here,
holds that not only should all conceivable underlying error
conditions have distinct error codes, [...]
Ah. You must mean AIX.

blue# ls -l fred
ls: 0653-341 The file fred does not exist.

blue# cat fred
cat: 0652-050 Cannot open fred.

blue# uname -a
AIX blue 1 6 000F1F6E4C00

AIX: The UNIX implementation from serious computer people.
John E. Malmberg
2017-03-17 22:40:42 UTC
Permalink
Raw Message
Post by Steven Schweda
Post by j***@yahoo.co.uk
Error code 2 in errno.h is (usually?) ENOENT, ie no such
file or directory. Any hints there?
Except that errno is not normally an exit status. My guess
# define EXIT_FAILURE 0x10000002
That is, 2, with no message. Or, with _POSIX_EXIT defined,
anyone could do an exit(2), which would be pretty generic.
Post by j***@yahoo.co.uk
[...] I have not been able to get a better status from
GNV Make as to what failed.
Not even a clue in some log file as to what it was doing
at the time? I don't understand how it's possible to have no
more info.
This is a script that runs a GNU configure script and then uses GNV Make
to run the resulting makefile.

The current GNU practice is to use a recursive make to see if if the
configure file needs to be regenerated, which does at least one
recursive make call.

I have turned on make debugging, and it did not tell me why after about
20 minutes into the make run, make exits with a status of 2.

At that time, make had not yet done anything, it had just been
determining what targets needed to be built.

Accounting has not shown anything other than confirming that GNV Make
exited with encoded status of 2, which for GNV make seems to be a
general error code.

Again, if I log in through interactively SSH to the exact same account
with the same SYLOGIN/LOGIN.COM options, the build succeeds.

So the the issue is what is different about the RSH environment and a an
interactive SSH environment, and so far raising quotas has not changed
the behavior.

Since starting this reply, I upgraded to TCP 5.7 and retried using SSH.

Same failure from the automated run. So changing from RSH to SSH did
not fix things.

SSH session has 3 less open files quota, but I have bumped that up by
100 yesterday.

Looks like I my option is to stop automatically building on VMS 8.3.

Regards,
-John
Stephen Hoffman
2017-03-17 23:19:53 UTC
Permalink
Raw Message
...so far raising quotas has not changed the behavior...
Make sure you're bumping quotas on both ends of the connection, and —
if make is not generating output for a while — look around for
something that might be killing the connection, or enable ssh keepalive
if it's not already lit.
--
Pure Personal Opinion | HoffmanLabs LLC
John E. Malmberg
2017-03-18 03:37:31 UTC
Permalink
Raw Message
...so far raising quotas has not changed the behavior...
Make sure you're bumping quotas on both ends of the connection, and — if
make is not generating output for a while — look around for something
that might be killing the connection, or enable ssh keepalive if it's
not already lit.
The connection is not dying. It just the make step prematurely aborting
for so far an unknown reason. The script continues on after that point.

Regards,
-John
David Froble
2017-03-18 01:57:58 UTC
Permalink
Raw Message
Post by John E. Malmberg
Post by Steven Schweda
Post by j***@yahoo.co.uk
Error code 2 in errno.h is (usually?) ENOENT, ie no such
file or directory. Any hints there?
Except that errno is not normally an exit status. My guess
# define EXIT_FAILURE 0x10000002
That is, 2, with no message. Or, with _POSIX_EXIT defined,
anyone could do an exit(2), which would be pretty generic.
Post by j***@yahoo.co.uk
[...] I have not been able to get a better status from
GNV Make as to what failed.
Not even a clue in some log file as to what it was doing
at the time? I don't understand how it's possible to have no
more info.
This is a script that runs a GNU configure script and then uses GNV Make
to run the resulting makefile.
The current GNU practice is to use a recursive make to see if if the
configure file needs to be regenerated, which does at least one
recursive make call.
I have turned on make debugging, and it did not tell me why after about
20 minutes into the make run, make exits with a status of 2.
At that time, make had not yet done anything, it had just been
determining what targets needed to be built.
Accounting has not shown anything other than confirming that GNV Make
exited with encoded status of 2, which for GNV make seems to be a
general error code.
Again, if I log in through interactively SSH to the exact same account
with the same SYLOGIN/LOGIN.COM options, the build succeeds.
So the the issue is what is different about the RSH environment and a an
interactive SSH environment, and so far raising quotas has not changed
the behavior.
Since starting this reply, I upgraded to TCP 5.7 and retried using SSH.
Same failure from the automated run. So changing from RSH to SSH did
not fix things.
SSH session has 3 less open files quota, but I have bumped that up by
100 yesterday.
Looks like I my option is to stop automatically building on VMS 8.3.
Regards,
-John
John, I'm not familiar with RSH. Never used it.

However, it appears that you are looking at the process quotas for an
interactive login. For detached processes, for example, the PQL parameters are
used. Possibly the RSH process is using alternative quotas?

Just a guess. You're doing something different, just need to figure out what.
Paul Sture
2017-03-17 11:38:39 UTC
Permalink
Raw Message
Post by j***@yahoo.co.uk
Post by John E. Malmberg
I have been trying to chase down a weird problem.
On just one of my systems, a VMS 8.3 system running on FreeAXP, I am
using it as a Jenkins builder.
Jenkins refuses to ssh to the VMS 8.3 system, so I am using "rsh -l
$USER" to launch the build script.
When I run the build script from the same account from an SSH session,
the build succeeds.
When I run the build script from Jenkins, it fails running GNV Make with
an error code of 2. I have not been able to get a better status from
GNV Make as to what failed.
I suspected a quota issues as there is an extra process in the process
tree when run from RSH.
Looking at process accounting does not show that a quota was reached.
I have increased several of the quotas anyway, prclm, Bytlm, and
Pgflquo, and no change in behavior.
The GNV Make is running under GNV Bash.
This same build runs fine on VMS 8.4 AXP and IA64. For those Jenkins
can use SSH to connect to the VMS builders.
Things I might look at, in the general (ie not specifically
Accounting - VMS process accounting records *may* sometimes shed
light on which quotas are insufficient.
Symbol and logical definitions - what differences exist
(intended or otherwise) between the environment that works
and the environment that doesn't? Systemwide and user-specific
login scripts are traditional places to look.
Error code 2 in errno.h is (usually?) ENOENT, ie no such file
or directory. Any hints there?
FWIW I recently ran into a problem between two *nix environments
that I've never seen before.

The command

ssh ***@other 'julia scriptname'

was mysteriously failing to find the executable. Just like John's
problem, it worked fine from within an ssh interactive session.

It turned out that I needed to put a full PATH= statement in
~/.ssh/environment on the target system.
Post by j***@yahoo.co.uk
Apologies if this stuff is obvious already or is irrelevant in
your particular picture.
Ditto.
--
A supercomputer is a device for turning compute-bound problems into
I/O-bound problems. ---Ken Batcher
Loading...