IBM(R) Distributed Debugger

and

Object Level Trace

Version 8.5

RELEASE NOTES

 

Table of Contents

1.0 Introduction
2.0 Prerequisites
      2.1 Prerequisites for OS/390(R) users
      2.2 Prerequisites for DB2 users  
3.0 Limitations and known problems
      3.1 General distributed debugger limitations and known problems
      3.2 Debugger engine limitations and known problems for interpreted Java
      3.3 Debugger engine limitations and known problems for compiled languages
4.0 Object Level Trace
      4.1 Corrections to the OLT online documentation
      4.2 NL and GUI related limitations
      4.3 OLT user interface limitations
      4.4 Building CB ActiveX client applications for trace and debug.
5.0 Installation on Windows (R)
      5.1 Uninstalling on Windows
6.0 Installation on platforms other than Windows (R)
7.0 Browser configuration  

1.0 Introduction

The distributed debugger supports debugging on AIX(R), version 4, OS/2(R), version 4, Solaris(TM), Windows NT(R), version 4, Windows 2000, OS/390(R), version 2.4 and above, and OS/400(R), Version 4, release 2 and above.

The debugger can debug both interpreted Java and compiled languages, such as C++ or compiled Java.

The following table indicates which platforms the debugger has server/client/National Language support, and debugger invocations on:
 

Platform

AIX

OS/2

Solaris

Windows NT

OS/390

Windows 2000

OS/400

Version

V4.2 and above

V4 and above

V2.6 and above

V4 and above

V2.4and above

 

V4R2 and above

Debugger Server Support

X

X

X

X

X

X

X

Debugger Client Support

X

   

X

 

X

 

National Language Support

Group 1~

Group 1

Group 1

Group 1

English,Japanese on host

Group 1 on client

Group 1

Group 1 

idebug

X

   

X

X*

X

X+

irmtdbgj

X

X

 

X

X

X

 

irmtdbgc

X

X

 

X

 

X

 

idebug - Invokes the debug user interface
irmtdbgj - Invokes the interpreted Java debug engine
irmtdbgc - Invokes the compiled languages debug engine

* For OS/390 remote debugging, use the idebug command to start a debugger user interface daemon that will connect to Debug Tool or Java debug engine on the host (OS/390). Restrictions that also apply to remote debugging 390 from NT will be marked with **.

~ Group 1 Languages are Brazilian Portuguese, English, French, German, Italian, Japanese, Korean, Simplified Chinese, Spanish, and Traditional Chinese.

+ For AS/400 remote debugging, use the idebug command on workstations to start the debugger user interface and ensure that STRDBGSVR command was issued on AS/400.  

This release provides remote and distributed debugging support and tracing capabilities on Windows NT, AIX, Solaris, and HP-UX as follows:

2.0 Prerequisites

Netscape Navigator, Version 4.5 or later is recommended for displaying debugger online help. If you reopen a help window multiple times and get a browser exception, then please ensure you are running a fairly recent version of a browser.

The interpreted debugger prerequisites are as follows:

JDK(TM) level as specified by the product with which the Distributed Debugger and Object Level Trace shipped.

For standalone debugging, the location of Java(TM) executable specified in the PATH environment variable must be from the JDK "bin" directory. If another Java executable is specified, the debugger cannot debug the application. For example,
if, on Windows NT, the PATH environment variable points to a java.exe in the \WINNT\SYSTEM32 directory, the debugger cannot debug the application. To avoid this problem, insert the full path to java.exe in the JDK bin directory to the start of the PATH environment variable.

To use the Distributed Debugger or Object Level Trace after installing V8.5 of the Distributed Debugger on top of WebSphere Enterprise Edition 3.02 on Windows NT, you must go into the IBMDebug\bin directory and rename ivbtr30i.302 to ivbtr30i.dll.

To use the Distributed Debugger or Object Level Trace on AIX, J2SDK(TM) v1.2.2 PTF8  is required.  

On OS/2, interpreted Java debugging is only supported for Java programs developed for JDK(TM) 1.1.8 or lower.

2.1 Prerequisites for OS/390 users
The following prerequisites require you to check the version of the Distributed Debugger user interface you are using on your workstation to debug your OS/390 programs. You can get the version number by issuing an "idebug" command at a command line prompt. The version number appears in the message that appears in  your Command Prompt window.

If you install the VisualAge for Java PTF for OS/390, you must ensure that you are running the Distributed Debugger user interface, version 8.4.3 or later. Version 8.4.3 of the Distributed Debugger is available for download at
IBM VisualAge Developer's Domain (http://www.ibm.com/vadd)

Version 8.4.3 or later of the Distributed Debugger user interface requires either of the following Debug Tool PTFs:

09/1999 DT PTF (EQAW.SEQAMOD)
03/2000 DT PTF (Y2000.M05.D09 DT)  

2.2 Prerequisites for DB2 users
If you are using remote stored procedure debugging on DB2, you must add the dertrjrt.jar file to your system CLASSPATH.

The location is dertrjrt.jar is as follows:

AIX: /usr/lpp/idebug/lib/dertrjrt.jar
Solaris: /opt/IBMdebug/lib/dertrjrt.jar
Windows NT: \IBMDebug\lib\dertrjrt.jar

3.0 Limitations and known problems

3.1 General distributed debugger limitations and known problems

3.2 Debugger engine limitations and known problems for interpreted Java

Limitations exist in the JDK that may cause problems when debugging your interpreted Java classes. You should be aware of the following limitations and problems when debugging interpreted Java programs:

To start a program you want to attach to with JDK 1.1.X, use the following command:

java_g -debug <classname and args>

Yo start a program you want to attach to on the Java 2 platform, use the following command:

java -Xdebug -Xbootclasspath:<JDK install directory>\lib\tools.jar;
<JDK install directory>\jre\lib\rt.jar -Djava.compiler=NONE
<classname and args>

  1. Step Into - This will step into the specified method regardless of what package the method is in.
  2. Step Debug - This will only step into methods which are not in the following packages:
    - java.*
    - javax.*
    - sun.*
    - com.sun.*
    - com.ibm.*
    - org.omg.*
    - org.xml.*
    - org.w3c.*

3.3 Debugger Engine limitations and known problems for compiled languages

Be aware of the following limitations and problems when debugging with the compiled language debugger.  

The following statements apply to debugging High Performance Java programs:

Other issues to be aware of:

The following statements apply to all compiled languages (C, C++, HPJ):

Module A and C contain debug information, B does not. 

line module A     line module B     line module C
==== ========     ==== ========     ==== ========
100  call B()    
   
                             5    call C()
                                                                     500 do some stuff
                                                                     510 return
                                 6    do stuff
                                 20   return
101 do stuff

A default step debug executed at line 100 in module A will cause the debugger to stop next at line 101 in module A. If the DER_DBG_DEEP_STEP_DEBUG environment variable is set then the debugger will stop at line 500 in module C.

4.0 Object Level Trace

Troubleshooting information for Object Level Trace is found in the OLT reference section of the online documentation. You can access this information from the help menu in any debugger or OLT window, or you can open \help\en_us\index.htm
in your IBMDebug install directory.

For Internet Explorer users: If you get a "file not found" error when launching online help from an OLT user interface, you may have outdated versions of two Internet Explorer DLLs on your system (URL.DLL and SHLWAPI.DLL). This causes the
"file://" string to be dropped from the URL. Installing Internet Explorer 4.01 or later corrects the problem.  

4.1 Corrections to the OLT online documentation
For all the WebSphere 3.5 documentation:

java.lang.OutOfMemoryError
    at sun.awt.image.ImageRepresentation.setPixels(Compiled Code)
    at java.awt.image.RGBImageFilter.setPixels(Compiled Code)
    at sun.awt.image.PixelStore8.replayLines(PixelStore8.java:53)
    at sun.awt.image.PixelStore.replay(Compiled Code)
    at sun.awt.image.PixelStore.replay(PixelStore.java:161)
    at sun.awt.image.InputStreamImageSource.updateFromStore (InputStreamImageSource.java :301)
    at sun.awt.image.InputStreamImageSource.doFetch (InputStreamImageSource.java:255)
    at sun.awt.image.ImageFetcher.fetchloop(Compiled Code)
    at sun.awt.image.ImageFetcher.run(Compiled Code)
java.lang.OutOfMemoryError
    at sun.awt.image.ImageRepresentation.setPixels(Compiled Code)
    at java.awt.image.RGBImageFilter.setPixels(Compiled Code)
    at sun.awt.image.PixelStore8.replayLines(PixelStore8.java:53)
    at sun.awt.image.PixelStore.replay(Compiled Code)
    at sun.awt.image.PixelStore.replay(PixelStore.java:161)
    at sun.awt.image.InputStreamImageSource.updateFromStore (InputStreamImageSource.java :301)
    at sun.awt.image.InputStreamImageSource.doFetch (InputStreamImageSource.java:255)
    at sun.awt.image.ImageFetcher.fetchloop (Compiled Code)
    at sun.awt.image.ImageFetcher.run(Compiled Code)

OLT_TRC_SRV_CODEPAGE=codepage of the OLT Tool host

4.2 NL and GUI related limitations

4.3 OLT user interface limitations
When OLT is in step-by-step debug mode, the OLT Viewer displays a dialog box at each debuggable method prompting you to step into the next debuggable method. You may not see this dialog box if the Distributed Debugger user interface is covering the OLT Viewer. If you are waiting to be prompted to step into the next debuggable method by the OLT Viewer, bring the OLT Viewer in focus so that you will see the dialog box.

4.4 Building CB ActiveX client applications for trace and debug
Follow the instructions in Chapter 8 of the Component Broker Programming Guide to
build the ActiveX(R) client DLLs. 

Visual Basic(R) or other OLE Automation client applications using the ActiveX interface 
may be traced but not debugged (i.e. you cannot step back from a server business 
object method into the client method).

Microsoft Visual C++(R) clients may be traced and debugged provided they are compiled 
and linked to be compatible with the Distributed Debugger format.

You must specify the /Z7 compiler option to produce Microsoft C 7.0 debug information
and the /DEBUG and /PDB:NONE linker options to generate the necessary debug information and embed it in the executable (rather than generating a program database file).

If you are using a Microsoft Visual Studio(R) project the options are accessible from the
Project Settings dialog as follows:
- the /Z7 option: from the C/C++ tab select Category: General and select Debug info: 
C7 Compatible
- the /PDB:NONE option: from the Link tab uncheck the Use program database check box. 

5.0 Installation on Windows

Installing the Distributed Debugger on Windows is automatic and does not require you to manually issue any commands or move any file (beyond selecting to install it in the installation setup screen).

If you have previously installed a beta version of the IBM Distributed Debugger you must first uninstall the beta version of the debugger before installing this product.

The debugger will not function if installed in a directory whose name contains DBCS characters.  

5.1 Uninstalling on Windows
On Windows, the debugger should not be uninstalled using the Add/Remove Programs icon in the Control Panel. The debugger should only be uninstalled via the product that installed it. Refer to the uninstallation instructions for the product.

If you previously installed a beta version of the IBM Distributed Debugger and you did not uninstall the beta version of the debugger before installing the product, either follow the process below to remove the debugger from your system and reinstall it.

IMPORTANT: The following process requires manual deletions to your registry information. If you accidentally delete any other registry key/entry than those identified below, your system may become unstable or unusable. Do NOT use this process if you are not experienced at manual registry editing.

To remove the IBM Distributed Debugger, perform the following steps:

  1. Run regedit.exe.
  2. Backup your registry file by exporting your registry file.
  3. Go to:
    HKEY_LOCAL_MACHINE\SOFTWARE\IBM\IBM Distributed Debugger\CurentVersion\Install
  4. If the Refcount value is greater than 1, then decrement the "RefCount" value data by 1.
  5. Click on the Uninstaller icon of the newer (non-beta) version of the Debugger.
  6. This should uninstall the icons and files (if there are no other IBM Products installed on your machine that make use of the IBM Distributed Debugger)
  7. If the "RefCount" value data is equal to one, remove the following registry key, if it exists:
    HKEY_LOCAL_MACHINE\SOFTWARE\IBM\IBM Distributed Debugger

If your RefCount entry is not equal to one, you are finished this process.

To reinstall the IBM Distributed Debugger, use the product CD.

You must uninstall the Distributed Debugger before you uninstall VisualAge for Java. Refer to the "Known problems and limitations with Uninstallation" section (for either Entry Enterprise or Entry Professional edition) in the Installation and Migration guide for more information. 

6.0 Installation on platforms other than Windows

Search for the install image of the distributed debugger. Copy the install file(s) to the machine on which debugger is to be installed.

To install on AIX (R): Use installp or 'smitty install_latest'.

To install on Solaris: Issue "pkgadd -d [name of the install image]"

To install on OS/2:

1. Choose a drive on which to install the Debugger Engine.
2. Create a directory called "\IBMDebug".
3. cd to "\IBMDebug".
4. Unzip the debugger ZIP file.

Setting Environment Variables for OS/2:

1. Add "d:\IBMDebug\bin" to the PATH environment variable, where d is the drive on which the debugger resides.
2. Add "d:\IBMDebug\dll" to the LIBPATH environment variable or to the BEGINLIBPATH environment variable.
3. Add "d:\IBMDebug\help" to the DPATH environment variable.
4. Add "d:\IBMDebug\msg\%L\%N" to the NLSPATH environment variable.
5. Add "d:\IBMDebug\locale" to the LOCPATH environment variable.

Note: To cause these changes to permanent, modify the environment variable settings in the CONFIG.SYS file. 

7.0 Browser configuration

7.1 Internet Explorer for Windows

irmtdbgj -qport=<port> -host=<hostname> -password=<agent password>

The debugger will attach to the applet running inside the browser. 

7.2 Netscape for Windows

You must have Netscape Navigator, Version 4.0 or greater.

Follow the instructions for Microsoft Internet Explorer with the following
modifications:

If you wish to debug more than one applet on the same system or if port 2502 is being used by another application, you may use the  following port/password pairs:

Port in Plug-In Panel     Agent Password for jdebug
-------------------------  ------------------------------
2502                             52fd4n
2503                             527dkr
2504                             4k6h32
2505                             44edjc
2506                             5ifdjf
----                                 ------
8003                             3kyt2g
8004                             44rtii
8005                             54rtik
8006                             4kyxkx