[Info-vax] 8.4 and DECwindows CDE login box not coming up
Stephen Hoffman
seaohveh at hoffmanlabs.invalid
Sun May 24 10:48:06 EDT 2015
On 2015-05-24 13:45:52 +0000, Paul Sture said:
> On 2015-05-23, Stephen Hoffman <seaohveh at hoffmanlabs.invalid> wrote:
>> On 2015-05-23 06:18:52 +0000, Paul Sture said:
>>> There was a known problem with that parameter in earlier versions of
>>> VMS where DECwindows would see a shortage, and try to remedy it by
>>> adding an entry to MODPARAMS.DAT (or maybe one of the INCLUDEd Autogen
>>> files - I forget the precise details), but fail to do so correctly.
>>
>> IIRC, that morass amounted to missed testing and two sources of truth;
>> the checks and the adjustments. The parameter addition did not match
>> the requirements of the parameter test. The layered product software
>> tests missed this case entirely. Rinse, lather, repeat.
>
> Yes, and my "plucked out of the air" comment left out that I bumped
> into this very problem on many occasions; the figure I gave was based
> on solid experience. On a new installation of a development system for
> example, a much lower figure will get you past the DECwindows problem,
> but you'll still need to raise GBLPAGES for the subsequent installation
> of compilers, Datatrieve etc etc.
If the defaults aren't revisited, the problems persist and new problems
are introduced. Problems that are intentionally triggered because it
was appropriate to limit the activity or the sequence in an old
environment, but enforcing that same limit is now just plain stupid in
the current environment. Or that limit needs to be a whole lot higher,
if it's still applicable. Much like cost-of-living adjustments in
legal and regulatory policies as budgets and prices change over, system
parameters and process quotas can also need adjustments, and some
limits should simply be removed.
There's a need to revisit other areas of an operating system or major
application, too. This can involve older code that's known to be
broken or to be limited but is left around for application
compatibility. It's broken code, it was replaced for a reason. It can
be broken beyond what's already known — security problems, other bugs —
and that can cause problems. It also slows down the build, and slows
down the testing. Remove it. For applications that provide
programmability or for operating systems, there are source code
programming examples with latent diagnostics or design errors or errors
of omission — error checks that weren't done, common cases that weren't
handled, etc.
Ponder how many bad end-user applications can arise from bad or broken
or incomplete source code examples, ponder how long those can continue
to be in use, and what that means for long-term support and user
satisfaction.
Also ponder the lack of common data stores and the lack of a database
past RMS, and what that means for applications and system code that
then implement what a database would have provided, whether support for
transactional changes or online backups or otherwise.
How there's no good distributed logging in OpenVMS, so some
applications roll their own, some use syslog or syslog-ng, and many
just barf up some stackdump or maybe write a crashdump, and perishingly
few can (yes, opt-in!) upload the crash data to the vendor for
analysis. There's no framework for uploading crash data, either — so
you skip this, or you roll your own.
It's all connected. Maintaining a large and customizable application,
or maintaining an operating system, is a ginormous and an ongoing and
evolving project. The need to reevaluate and rework the whole is not
at all unusual with large projects, however:
<http://www.citylab.com/work/2015/04/the-fascinating-neverending-job-of-painting-the-golden-gate-bridge/390453/>
But I digress.
>
>> This is part of why I think how AUTOGEN and the layered product
>> installs should be overhauled, and particularly support for application
>> profiles added. Register the system parameters and the user settings
>> at install, then adjust the parameters post-installation and reboot if
>> needed, and check the quotas at image startup.
>
> The Stan Rabowitz tale "A Day in the Life of the Image Activator" was
> all the more funny for having gone through the process of identifying
> and then applying INSTALL /OPEN / HEADER to the images Datatrieve uses.
The downside of the image activator and quotas: there's can be no
diagnostic path out available out of that code when some quota limit is
struck and breaks the activation. Hopefully the updates to the x86-64
image activator will improve this area somewhat. Even emitting
startup diagnostics via a kernel ring buffer would be better than the
morass that we have now.
> FWIW I've still got an old modparams.dat file on my V8.3 system which
> has the section quoted below. I don't recall (maybe my faulty memory)
> seeing these changes being propagated into versions later than 7.3-1,
> which is why I kept that file around:
>
> !*** The following entries have been added by the RMS remedial kit
> !*
> ADD_PIOPAGES = 100 !***Entered by RMS (ASB increase)
> ADD_IMGIOCNT = 100 !***Entered by RMS (ASB increase)
> MIN_PIOPAGES = 675 !***Entered by RMS (ASB increase)
> MIN_IMGIOCNT = 228 !***Entered by RMS (ASB increase)
> !*
> !*** End of RMS remedial kit entries
That's the OpenVMS Engineering version of the usual sort of parameter
crap — yes, crap — that ends up building up in MODPARAMS.DAT. Changes
that were once appropriate, but that become little more than historical
cruft or confusion or — rarely — this sequence looks reasonable though
it'll require manual or automated removal or it'll leak the ADD when
some subsequent OpenVMS ADD_ adds are added, but some of these
parameter settings can later cause some systems to fail in weird ways —
and these settings are hard to get rid of.
Off the top, there should be profile support here and those changes
should be in a profile (or an object or module or hunk or AUTOGEN
include file or whatever you want to call the "list of demands" from
some particular hunk of system or application code) , and it should
have which RMS kit requested it, and why, and when the changes can be
or should be backed out, or the changes should be backed out
automatically. This stuff is inevitably going to happen. Additions.
Superseding changes. Removals. Expect it. Plan for it. Design for
it. Avoid getting into the rut of hacking in separate and unique
changes and individually crafted and integrated across multiple tools
and products and releases, particularly if a more generic solution is
going to be cheaper in aggregate, and easier to maintain longer-term.
Or if you do, then make that trade-off knowing full well you're
accruing technical debt.
>> Quota limits and parameter limits and related decisions need to be
>> periodically re-evaluated, lest they become impediments to easier
>> operations, and for what can become no positive values. In three to
>> five years, if the users don't have servers with eight or sixteen
>> gigabytes — that's typical of decent-grade x86-64 laptops now, and new
>> x86-64 servers with a terabyte of RAM are now priced at US$15K to
>> US$20K, after all — then start down the path to require memory hardware
>> upgrades or to de-support those older and under-configured boxes on
>> newer releases. Relegate the old and under-configured boxes that can't
>> be upgraded to long-term support releases, or schedule and de-support
>> them.
>
> Indeed. A few years ago I thought that dealing with files of 1 or 2 GB
> was something I would only be likely to do in an enterprise
> environment, yet I'm merrily chucking those around on a 2011 model Mac
> mini, not even close to the server grade kit available now.
Some of my OS X customers are running with 36 TB of array storage. And
more. At present, 64 TB is two dinky hardware RAID arrays; in
aggregate, physically smaller than an AlphaStation XP1000 box. (That
then led to some brief puzzlement from the recent thread around leaking
4 GB here in comp.os.vms — leakage which seemed inconsequential, until
I remembered that Phillip was still on 9 GB drives.)
--
Pure Personal Opinion | HoffmanLabs LLC
More information about the Info-vax
mailing list