Defects

VM 8.2.x - VM desktop client GUI does not start, PCLI shows error Could not load NSLDAPSSL32V60.dll



ID:    D697
Published:    02 February 2009
Updated:    17 November 2011
 

Defect Id

DEF157423

Originally Reported Against

PVCS Version Manager 8.2.1

Resolved In

PVCS Version Manager 8.3

Status

Implemented

Description

After installing VM 8.2.x, attempts launch desktop client GUI all fail, and IDE integrations fail to work
 
When attempting to run a PCLI command, or attempting to run the GUI in debug mode (pvcsvmntc.exe -d), the following error is shown:

Could not load NSLDAPSSL32V60.dll.
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0xffbadd11, pid=2844, tid=5748
#
# Java VM: Java HotSpot(TM) Client VM (1.6.0_02-b06 mixed mode)
# Problematic frame:
# C  0xffbadd11
#
# An error report file with more information is saved as hs_err_pid2844.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
 
The hs_err_pid####.log that is referenced contains a Java stack dump similar to this:
 
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0xffbadd11, pid=408, tid=5884
#
# Java VM: Java HotSpot(TM) Client VM (1.6.0_02-b06 mixed mode)
# Problematic frame:
# C  0xffbadd11
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x009e7400):  JavaThread "main" [_thread_in_native, id=5884]

siginfo: ExceptionCode=0xc0000005, reading address 0xffbadd11

Registers:
EAX=0x00000000, EBX=0xffbadd11, ECX=0x0013f8c0, EDX=0x7c97c0d8
ESP=0x0013f7a4, EBP=0x0013f8c8, ESI=0x009e74ec, EDI=0x00000000
EIP=0xffbadd11, EFLAGS=0x00010246

Top of Stack: (sp=0x0013f7a4)
0x0013f7a4:   6d461935 6da78324 00000000 12cb80b8
0x0013f7b4:   009e7400 12cb80b8 00150778 0015cbe8
0x0013f7c4:   001537ac 00000000 0013f2dc 00152098
0x0013f7d4:   0013f3a8 7c91056d 00100001 00150000
0x0013f7e4:   0013f0f4 00000001 00000004 6d9e9156
0x0013f7f4:   00000002 0013f810 0013f810 6d9e966a
0x0013f804:   12c29650 6d9af08f 009e6948 6da3aee8
0x0013f814:   009e6948 00000015 00000000 00000004

Instructions: (pc=0xffbadd11)
0xffbadd01:  
[error occurred during error reporting, step 100, id 0xc0000005]

Stack: [0x00040000,0x00140000),  sp=0x0013f7a4,  free space=1021k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  0xffbadd11
j  java.lang.ClassLoader$NativeLibrary.load(Ljava/lang/String;)V+0
j  java.lang.ClassLoader.loadLibrary0(Ljava/lang/Class;Ljava/io/File;)Z+300
j  java.lang.ClassLoader.loadLibrary(Ljava/lang/Class;Ljava/lang/String;Z)V+268
j  java.lang.Runtime.loadLibrary0(Ljava/lang/Class;Ljava/lang/String;)V+54
j  java.lang.System.loadLibrary(Ljava/lang/String;)V+7
j  pvcs.cmd.CmdProcessor.<clinit>()V+6
v  ~StubRoutines::call_stub

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.lang.ClassLoader$NativeLibrary.load(Ljava/lang/String;)V+0
j  java.lang.ClassLoader.loadLibrary0(Ljava/lang/Class;Ljava/io/File;)Z+300
j  java.lang.ClassLoader.loadLibrary(Ljava/lang/Class;Ljava/lang/String;Z)V+268
j  java.lang.Runtime.loadLibrary0(Ljava/lang/Class;Ljava/lang/String;)V+54
j  java.lang.System.loadLibrary(Ljava/lang/String;)V+7
j  pvcs.cmd.CmdProcessor.<clinit>()V+6
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x16d8e400 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=6136]
  0x16d89800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=5916]
  0x16d88400 JavaThread "Attach Listener" daemon [_thread_blocked, id=6020]
  0x16d87400 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=5180]
  0x16d78000 JavaThread "Finalizer" daemon [_thread_blocked, id=5612]
  0x16d73c00 JavaThread "Reference Handler" daemon [_thread_blocked, id=4716]
=>0x009e7400 JavaThread "main" [_thread_in_native, id=5884]

Other Threads:
  0x16d70800 VMThread [id=556]
  0x16d8f800 WatcherThread [id=3048]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 960K, used 620K [0x02ba0000, 0x02ca0000, 0x03f50000)
  eden space 896K,  69% used [0x02ba0000, 0x02c3b370, 0x02c80000)
  from space 64K,   0% used [0x02c80000, 0x02c80000, 0x02c90000)
  to   space 64K,   0% used [0x02c90000, 0x02c90000, 0x02ca0000)
 tenured generation   total 4096K, used 0K [0x03f50000, 0x04350000, 0x12ba0000)
   the space 4096K,   0% used [0x03f50000, 0x03f50000, 0x03f50200, 0x04350000)
 compacting perm gen  total 12288K, used 2113K [0x12ba0000, 0x137a0000, 0x16ba0000)
   the space 12288K,  17% used [0x12ba0000, 0x12db0510, 0x12db0600, 0x137a0000)
No shared spaces configured.

Dynamic libraries:
0x00400000 - 0x00417000     C:\PROGRA~1\Serena\vm\win32\bin\pcli.exe
0x7c900000 - 0x7c9b0000     C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c8f5000     C:\WINDOWS\system32\kernel32.dll
0x77dd0000 - 0x77e6b000     C:\WINDOWS\system32\ADVAPI32.dll
0x77e70000 - 0x77f02000     C:\WINDOWS\system32\RPCRT4.dll
0x77fe0000 - 0x77ff1000     C:\WINDOWS\system32\Secur32.dll
0x7e410000 - 0x7e4a0000     C:\WINDOWS\system32\USER32.dll
0x77f10000 - 0x77f57000     C:\WINDOWS\system32\GDI32.dll
0x6d870000 - 0x6dab9000     C:\PROGRA~1\Serena\vm\common\jre\win32\bin\client\jvm.dll
0x76b40000 - 0x76b6d000     C:\WINDOWS\system32\WINMM.dll
0x7c340000 - 0x7c396000     C:\WINDOWS\system32\MSVCR71.dll
0x6d3c0000 - 0x6d3c8000     C:\PROGRA~1\Serena\vm\common\jre\win32\bin\hpi.dll
0x76bf0000 - 0x76bfb000     C:\WINDOWS\system32\PSAPI.DLL
0x6d820000 - 0x6d82c000     C:\PROGRA~1\Serena\vm\common\jre\win32\bin\verify.dll
0x6d460000 - 0x6d47f000     C:\PROGRA~1\Serena\vm\common\jre\win32\bin\java.dll
0x6d860000 - 0x6d86f000     C:\PROGRA~1\Serena\vm\common\jre\win32\bin\zip.dll
0x17800000 - 0x1783c000     C:\Program Files\Serena\vm\common\bin\win32\pvcsjvms.dll
0x77c00000 - 0x77c08000     C:\WINDOWS\system32\VERSION.dll
0x17840000 - 0x17860000     C:\PROGRA~1\Serena\vm\common\bin\win32\pvcsjlib.dll
0x17860000 - 0x17926000     C:\PROGRA~1\Serena\vm\common\bin\win32\vmwfdtk.dll
0x17930000 - 0x179d3000     C:\PROGRA~1\Serena\vm\common\bin\win32\pvcsfscli.dll
0x179e0000 - 0x179ee000     C:\PROGRA~1\Serena\vm\common\bin\win32\pvcsini.dll
0x71ad0000 - 0x71ad9000     C:\WINDOWS\system32\WSOCK32.dll
0x71ab0000 - 0x71ac7000     C:\WINDOWS\system32\WS2_32.dll
0x77c10000 - 0x77c68000     C:\WINDOWS\system32\msvcrt.dll
0x71aa0000 - 0x71aa8000     C:\WINDOWS\system32\WS2HELP.dll
0x179f0000 - 0x17aca000     C:\PROGRA~1\Serena\vm\common\bin\win32\iconv.dll
0x17ad0000 - 0x17ae3000     C:\PROGRA~1\Serena\vm\common\bin\win32\zlib1.dll
0x17af0000 - 0x17bc0000     C:\PROGRA~1\Serena\vm\common\bin\win32\LIBEAY32.dll
0x17bc0000 - 0x17be7000     C:\PROGRA~1\Serena\vm\common\bin\win32\SSLEAY32.dll
0x17bf0000 - 0x17c03000     C:\PROGRA~1\Serena\vm\common\bin\win32\pvcsldap.dll
0x180a0000 - 0x180d1000     C:\PROGRA~1\Serena\vm\common\bin\win32\NSLDAP32V60.dll
0x71a50000 - 0x71a8f000     C:\WINDOWS\system32\MSWSOCK.dll

VM Arguments:
jvm_args: -Djava.library.path=C:\PROGRA~1\Serena\vm\common\bin\win32 -Djava.home=C:\PROGRA~1\Serena\vm\common\jre\win32 -Dpvcs.home=C:\PROGRA~1\Serena\vm\common -Dpvcs.tempFiles=C:\DOCUME~1\TAYLOR~1.ALE\LOCALS~1\Temp -Duser.home= -Dislv.ini=C:\WINDOWS\islv.ini -Dpvcs.initname=PCLI -Dpvcs.vm.bindir=C:\PROGRA~1\Serena\vm\common\bin\win32 -Dsun.java2d.noddraw=true -Xmx256m
java_command: <unknown>
Launcher Type: generic

Environment Variables:
PATH=C:\PROGRA~1\Serena\vm\common\bin\win32;C:\Program Files\PC Connectivity Solution\;C:\Program Files\TRIM Context\;C:\PROGRA~1\Serena\vm\win32\bin;C:\PROGRA~1\Serena\vm\common\bin\win32;C:\Perl\bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~1\COMMON~1\Odbc\FILEMA~1;C:\Program Files\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\Attachmate\Reflection\;c:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Common Files\Roxio Shared\DLLShared\;C:\PROGRA~1\CA\SHARED~1\Csam\SOCKAD~1\bin;C:\oracle\instantclient_11_1
USERNAME=Hugo.Reyes
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 15 Stepping 2, GenuineIntel



---------------  S Y S T E M  ---------------

OS: Windows XP Build 2600 Service Pack 2

CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 15 stepping 2, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 2094632k(1080452k free), swap 4032568k(3238892k free)

vm_info: Java HotSpot(TM) Client VM (1.6.0_02-b06) for windows-x86, built on Jul 12 2007 01:16:14 by "java_re" with unknown MS VC++:1310
 
Trying to run a CLI  command (get.exe, put.exe, vcs.exe, etc.) may trigger the error message:
 
The procedure entry point NSS_RegisterShutdown could not be located in the dynamic linklibary nss3.dll
 
On the same system, VM 8.1.4.x will run / did run without these problems.

Resolution

These errors are typically the result of launching PVCS Version Manager on a system where a 3rd party application has copied DLLs into the system-wide %windir%\System32 folder which are incompatible with the ones used by (and included with) with PVCS Version Manager. An example of an application known to do this is the Sun ONE Directory Server (5.2).
 
Normally Version Manager will load the DLLs found in its installation directory, but the order of precedence in which DLL files get located on Windows operating systems force the use of DLL files found in %windir%\System32 over ones found in %PATH%. Once the incompatible libraries get loaded into memory, the VM applications fail to start and pass the error to the user.
 
To resolve this issue, the appropriate versions of the affected DLLs need to be loaded by the PVCS Version Manager code.
 
The search order Windows uses to locate DLLs is: 
  1. The directory containing the executable that wants to load the DLL.
  2. The current directory, also known as the "Start in" directory.
  3. The %SystemRoot%\system32 directory (eg. C:\WINNT\system32).
  4. The %SystemRoot%\system directory (eg. C:\WINNT\system).
  5. The %SystemRoot% directory (eg. C:\WINNT).
  6. The directories specified in %PATH%, left to right.
In order for VM to use its own version of the DLLs, additional copies needs to be placed in a location that has a higher order of precedence than the mismatched versions in %SystemRoot%\system32 (location #3), leaving locations #1 and #2.  Since location #2 is variable, the best solution is to use location #1: the directory containing the executable that wants to load the DLL.
 
Use the following matrix to locate the executables for each client:
 
Client
Executable
Location
Desktop GUI/PCLI
pvcsvmnt.exe
pvcsvmntc.exe
pcli.exe
 
VM_Install_Dir\vm\win32\bin
IDE Client (SCC)
PCLIOutProc.exe
 
VM_Install_Dir\vm\devint\bin as well as the directory of the IDE executable
Rich IDE Client for Visual Studio 2005
devenv.exe
Determined by IDE
Rich IDE Client for eclipse
java.exe
Determined by IDE
File Server/Web App (Running as a Service)
tomcat.exe
 
VM_Install_Dir\vm\common\tomcat\bin
File Server/Web App (Running as an Application)
vpadmin.exe
java.exe
 
VM_Install_Dir\vm\common\jre\win32\bin

The affected DLLs are:

LIBNSPR4.DLL
LIBPLC4.DLL
NSLDAP32V60.DLL    (NSLDAP32V50.DLL if VM < 8.2.0.0)
NSLDAPPR32V60.DLL  (NSLDAPPR32V50.DLL if VM < 8.2.0.0)
NSLDAPSSL32V60.DLL (NSLDAPSSL32V50.DLL if VM < 8.2.0.0)
NSS3.DLL
SSL3.DLL


By copying these files from the directory VM_Install_Dir\vm\common\bin\win32 into the directories shown in this table, you will be able to resolve the problem for the respective clients.

Find Answers

Type a question or describe what you are looking for below

My Recent Searches

Welcome kb sso

Additional Assistance

  • Submit a Case Online
  • FAQs