RE: Issue regarding CIMServerDiscovery.lookup() method
Marek Szermutzky <[email protected]>
| Newsgroups | gmane.network.open-pegasus.general |
|---|---|
| Message-ID | <OFFA746BBF.F58A994E-ONC12578BF.003DF047-C12578BF.003FBE07@de.ibm.com> |
Last code changes made to CIMServerDiscovery were done 5 years ago, which means in these specific code parts nothing changed since OP 2.6. To a certain degree I agree with your perception that one bad apple should not ruin the entire applesauce. Ideally the discovery function would report errors(be it through an error structure, an error code or an exception), but still return all information that could be gathered. Maybe in the case of the lookup this could be as easy as writing the error from the exception to Log and return the number of CIMOMs that failed to report correctly. The CIMServerDiscovery class is not part of the external interface yet, which means we have every chance to make even substantial changes to it. Mit freundlichen Grüßen / Kind regards Marek Szermutzky p.s.: OP 2.6 is real, real old... We are currently developing 2.12 or 3.0 and have fixed little more then two thousand bugs since OP 2.6. Software Engineer / OpenPegasus Maintainer (PMC) and z/OS PlatformRep. IBM Systems &Technology Group, Systems Software Development / z/OS Capacity Management and Support ------------------------------------------------------------------------------------------------------------------------------------------- IBM Deutschland Schoenaicher Str. 220 71032 Boeblingen Phone: +49-7031-16-5182 E-Mail: [email protected] ------------------------------------------------------------------------------------------------------------------------------------------- IBM Deutschland Research & Development GmbH / Vorsitzender des Aufsichtsrats: Martin Jetter Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294 From: "CK, Syamlal" <[email protected]> To: "V, Hitha" <[email protected]>, Marek Szermutzky/Germany/IBM@IBMDE Cc: "[email protected]" <[email protected]>, "Pandurengan, Ponselvarani" <[email protected]> Date: 30.06.2011 09:01 Subject: RE: Issue regarding CIMServerDiscovery.lookup() method ---------- Hi Marek, Does 2.11 version also has the capability to log the problematic url and continue with the discovery of other CIMOMs in the network. ? I think ideally one problematic server in the network should not cause the whole discovery to fail. Please let us know your thoughts. Regards Syamlal. From: V, Hitha Sent: Wednesday, June 29, 2011 4:20 PM To: Marek Szermutzky Cc: [email protected]; Pandurengan, Ponselvarani; CK, Syamlal Subject: RE: Issue regarding CIMServerDiscovery.lookup() method Our application uses OP 2.6. Regards, Hitha V From: Marek Szermutzky [ mailto:[email protected] ] Sent: Monday, June 27, 2011 4:12 PM To: V, Hitha Cc: [email protected]; Pandurengan, Ponselvarani; CK, Syamlal Subject: Re: Issue regarding CIMServerDiscovery.lookup() method Hi. In OpenPegasus 2.11 we introduced an improved version of the exception you see. It prints data up to the "bad" point and hex coded some of the following bytes. Since this is not the case on your side I assume that you currently use an earlier version of OP. The fix was brought back to OP 2.10.1 which is not released yet though. What you could do to identify the URL is to put the patch from Bug#8813 onto your OP source and go from there. Please also note the two defines BADUTF8_MAX_CLEAR_CHAR and BADUTF8_MAX_CHAR_TO_HEX which allow you to steer how many clear(=clean=okay) characters are printed and how many of the "bad" characters are encoded into hex chars. For your specific case I recommend to set #define BADUTF8_MAX_CLEAR_CHAR to at least 4000 (so you get the entire clear text string). Mit freundlichen Grüßen / Kind regards Marek Szermutzky Software Engineer / OpenPegasus Maintainer (PMC) and z/OS PlatformRep. IBM Systems &Technology Group, Systems Software Development / z/OS Capacity Management and Support ------------------------------------------------------------------------------------------------------------------------------------------- IBM Deutschland Schoenaicher Str. 220 71032 Boeblingen Phone: +49-7031-16-5182 E-Mail: [email protected] ------------------------------------------------------------------------------------------------------------------------------------------- IBM Deutschland Research & Development GmbH / Vorsitzender des Aufsichtsrats: Martin Jetter Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294 From: "V, Hitha" <[email protected]> To: "[email protected]" <[email protected]> Cc: "CK, Syamlal" <[email protected]>, "Pandurengan, Ponselvarani" <[email protected]> Date: 22.06.2011 13:48 Subject: Issue regarding CIMServerDiscovery.lookup() method ---------- Hi, Our application uses Pegasus SLP APIs to discover the CIMOMs in a network. This method works correctly when invoked from a Linux machine. However, on some Windows machines it has been seen that the method throws the exception “The byte sequence starting at index 3936 is not valid UTF-8 encoding” and subsequently fails to return the CIMOM list. When I run “slptool” from Linux (I don’t have a Windows version of it) and look at the output URL list, I don’t see any invalid characters. Has anyone faced a similar issue anytime? If so, what is the work around? How can we identify the URL which contains the invalid character, so that we can isolate it from the network and proceed with testing? Regards, Hitha V