× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



You're stirring up some little gray cells that have been sleeping
comfortably (and dying off) for many years.  I'll try to get this right but
don't shoot me if it doesn't match the recollections of some other people.

Binder language was in the original specification but I think that
signatures were not part of binder language.

There was no update service program in the original spec.  The plan was to
recreate service programs (and regenerate the signature) then recompile all
the programs that used the service program.  This part is a little fuzzy,
keep reading.

I have a vague recollection: the expectation was that service programs were
expected to change about as often as physical files so copying the service
program signature into all the programs that used it was as safe and static
as binding the programs to the database.

When designing this part of ILE, the IBM developers didn't recognize that,
as software developers in our own right, we had large and complex
applications with PTF processes of our own.  They thought that we just
shipped new releases.  When we told them that a JDE release contained about
8,000 to 10,000 program objects and copy books and that a product release
consisted of more than 10 million lines of code (all pieces), they were
stunned.  They had no idea that our apps were that large.  There were other
vendors with similar-sized products and similar-sized problems.  This
revelation forced them to reconsider how we would architect and support
service programs.  I think that it also gave them a list of the choices that
IBM might select from when they went to use service programs in the future.

When we made it clear that service programs would be a keystone in new
architectures and that they would break and have to be enhanced and repaired
frequently, the IBM people thought up the fairly complex signature
management scheme that we have today.

Export(*all) wasn't the only choice, the service program could have private
functions.  But any change in the interface for an exported function would
cause all affected programs to be recompiled.  I don't recall this next bit
specifically but I have a vague recollection that the program signature was
not function by function, there was one signature for the entire list of
exported functions.

We also whined about having to ship these huge things with a 1,000 functions
in them over 14.4 and 28.8 and 9.6 and 4.8 circuits and asked for some way
to replace just one failing function in a huge service program.  Some of us
supported customers in places where 4.8 was the best you could do.  We were
all looking forward to shipping software on CD-ROMs.

I'm pretty sure that, at the time, some of use didn't completely understand
the signature solution (I recall feeling nervous about the complexity of it
all) and we weren't told very much about the implementations.  If it didn't
work out very well from your point of view, we did our best and I think that
it turned out okay - I don't feel too badly about it.

Richard Jackson
mailto:richardjackson@richardjackson.net
http://www.richardjacksonltd.com
Voice: 1 (303) 808-8058
Fax:   1 (303) 663-4325

-----Original Message-----
From: owner-rpg400-l@midrange.com [mailto:owner-rpg400-l@midrange.com]On
Behalf Of Simon Coulter
Sent: Wednesday, August 23, 2000 5:53 PM
To: RPG400-L@midrange.com
Subject: Re: Creating a service program


"
Hello Richard,

You wrote:
>In JDE code, date conversions, numeric conversions, and several other
>routines are used everywhere - in every program.  If those routines were in
>a service program and that service program was compiled to export all
>procedures and a new routine was added to that program, at the time every
>service program would have had a signature and that signature would have
>changed with the new routine and JDE would been forced to reship every
>program on the system.  We thought that it might have been too difficult to
>statically determine intricate call stacks between about 2,000 mainline and
>subprograms plus another thousand RPG subroutines presently in copy books.

Ahh! Now I understand.  But that problem is all to do with EXPORT(*ALL) and
nothing to
do with 'updating the service program' which I took to mean via the
UPDSRVPGM command --
which existed internally and I recall wasn't going to be exposed.  Do you
really mean
that binder source wasn't planned and therefore the signature would change
anytime the
service program interface changed (new procs, new parms, etc) because
EXPORT(*ALL) was
the only choice?  That seems remarkably short-sighted and unlikely.

>If the machine helped, we were more comfortable.  So we fought for a way to
>update a service program and ship just the changed service program and
>effected modules.  Participating in these meetings gave me a great deal of
>respect for the IBM people that make far-reaching architecture decisions
all
>the time.

And so it should .... :)  For the most part, Rochester does a bloody good
job.  It's the
idiots in Armonk (and White Plains) we have to wack about bit ....

Regards,
Simon Coulter.

«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»
«» FlyByNight Software         AS/400 Technical Specialists       «»
«» Eclipse the competition - run your business on an IBM AS/400.  «»
«»                                                                «»
«» Phone: +61 3 9419 0175      Mobile: +61 0411 091 400           «»
«» Fax:   +61 3 9419 0175      mailto: shc@flybynight.com.au      «»
«»                                                                «»
«» Windoze should not be open at Warp speed.                      «»
«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---

+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.