× 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.



The object subtype x00 is reserved for [if I recall correctly, the so-called] /prototype/ object types, so the 1-byte value x00 is not actually supported for the subtype of a 2-byte object type x19 as effected by the Create Space (CRTS) MI instruction. Rationally then, the LIC should be denying the request with an exception message; i.e. AFaIK, any feature issuing a CRTS to create an x/1900 object should fail, at least if they are associated with a context [i.e. esp. should not be allowed to be inserted into a *LIB]. I seem to recall having stated this same thing in a past message with a similar occurrence of x/1900 *SP objects; I believe that was a scenario consistent with what the KB article [TechNote N1018328; historically Technical Document 12332859] describes with its references to APARs SE42868 and SE45286 for which apparently PTFs were issued to prevent the defect for the Performance Data tooling leaving such object types, but the LIC apparently still allows their creation, and the QPFR features likely still create those /prototype/ object types vs some proper\supported internal object types.
http://www.ibm.com/support/docview.wss?uid=nas8N1018328

The more appropriate symbolic types are one of the *MSCSP [Miscellaneous Permanent Space; x/19EE; if the object needs permanence across an IPL] and the *QTSP [a Temporary Space; x/19EF; if the object need not be persistent across IPLs]. Anyhow, for these reasons, I am not surprised that the save [e.g. SAVOBJ, SAVLIB] feature does not want to save objects of that type. I seem to recall that the save feature does save legitimate internal object types however, but only when OBJ(*ALL) OBJTYPE(*ALL) is specified or implied by the command or API request; though I believe they may not be included in the /objects saved/ count.

FWiW: The DMPOBJ of the *LIB to locate the objects is a bit excessive, esp. if there are many objects in the library. The DMPSYSOBJ is the overall better choice, to get just the objects of interest. There is no requirement to know the full name of the objects, because generic* names are supported, as well generic type\subtypes; besides, the remaining bytes of the name may be non-printable characters, and in that case the name would have to be specified in hex characters if issued on a command-line. For the specific incident, the presumed-appropriate request would be:

DMPSYSOBJ PRESSURELO* The_LibName 19 *ALL /* or 00 */

The TYPE and SUBTYPE parameters must be specified, because the OBJTYPE parameter does not support the *SP object type, nor any internal object type. Because the object is not on /external object type/ there is no capability to review its Object Information Record (OIR), so *SERVICE and *FULL information like what might be available for other objects via DSPOBJD is not available; and again, not being an external object type, its OBJTYPE parameter also has no support for the symbolic type *SP. And also a request such as DSPLIB, the QUSLOBJ API, or the WRKLNK for the same generic object name could present the object(s) in a list, the available information [if even the interface will present any details] is going to be limited to some small number of attributes like the owner, authority, and creation date\time [those also available in the spooled dump data; some of what is available from the MATSOBJ and possibly the MATS MI instructions]; things like the system-created-on, created-by-user, save\restore information, et al, i.e. the details that are stored only in the OIR, will not be available. For lack of an object handler, I am unsure if even there will be auditing. The "what job" information would only exist, if that detail were in the space [i.e. the data; if placed there by whatever application created the object], because that is not an attribute of the object itself; and, refer back to the prior auditing comment. So although the following invocation should list the objects [with apparently duplicate names; see Mark's comments about 30-byte names], what options that are usable [at all functional, or perhaps just missing information] against those *SP objects, is probably limited:
WRKLNK OBJLNK('/qsys.lib/TheLibrary.lib/PRESSURELO*.sp')

Regards, Chuck

On 13 Sep 2013 14:34, Mark S Waterbury wrote:

Any OPM MI program can create space objects -- they might show up
with a type of "*SPC" or "*SP" ... they may or may not have a visible
object "attribute" -- also, the object names at the MI layer are 30
characters long -- OS/400 traditionally only makes available 10
character object names to the users of OS/400 ... but below OS/400,
at the MI layer, the names are in fact 30 characters. So, an OS/400
library name (called a "context" in MI) could be up to 30 characters,
and the object names inserted into the context can each be up to 30
characters. I suspect that if you see more than one of these
"PRESSURELO" names, they are in fact longer than 10 characters, and
if you can see the entire name, you may see that they are different
in positions 11-30. One way to see them is to do a
DMPOBJ xxxxxxxxxx *LIB and then examine the QPSRVDMP spool file.

You can also dump one of these objects, e.g. using DMPSYSOBJ, once
you know the full object type, object subtype, and 30-character
object name (from the above dump of the context.) The resulting spool
file should tell you more about these objects, such as when they were
created, by what job, etc., as well as their size and a "dump" of the
contents of the space.

Note also that these may or may not have been created by IBM -- they
could have been created by any MI program, or even a program written
in an ILE language (C, COBOL or RPG IV) that can invoke MI
instructions "in-line".

I hope this helps you to figure out what they are or where they came
from ...

Let us know what you find out.

On 9/13/2013 4:41 PM, Thomas Garvey wrote:
While backing up a library, we found that several objects won't be
saved. There are multiple occurrences of the same object name
(PRESSURELO), with object type *SP, in the library. Can't find any
references to this object type anywhere. At first I thought they
might be related to stored procedures, but my experience with
these have always been program or service program objects. Any
ideas?


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.