Bug 1171315

Summary: C++ client crash in Windows 32-bit running the SWIG tests
Product: [JBoss] JBoss Data Grid 6 Reporter: Alan Field <afield>
Component: CPP ClientAssignee: Ion Savin <isavin>
Status: CLOSED WORKSFORME QA Contact: Alan Field <afield>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 6.4.0CC: afield, dmehra, jpallich, mgencur, pzapataf, sjacobs
Target Milestone: CR1   
Target Release: 6.4.0   
Hardware: Unspecified   
OS: Windows   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-08 19:32:36 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1153111    
Attachments:
Description Flags
Crash log with my build of the libraries
none
Crash log with libraries from the ER7 build
none
Crash log with libraries from the ER7 build (12-18) none

Description Alan Field 2014-12-05 21:35:35 UTC
Created attachment 965233 [details]
Crash log with my build of the libraries

Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Alan Field 2014-12-05 21:39:35 UTC
Created attachment 965234 [details]
Crash log with libraries from the ER7 build

Comment 3 Alan Field 2014-12-05 21:41:17 UTC
The ctest log from my build contains this error message:

6: ===============================================
6:     SWIG Tests
6:     Tests run: 41, Failures: 5, Skips: 0
6: ===============================================
6: 
6: 15:26:23,885 INFO  [HotRodTestingUtil$] (main) Start server in port 15260
6: 15:26:23,885 INFO  [DefaultExpirationTest] (main) Started server on port: 15260
6: [thread 2856 also had an error]
6: [thread 2488 also had an error]
6: #
6: # A fatal error has been detected by the Java Runtime Environment:
6: #
6: #  EXCEPTION_SINGLE_STEP (0x80000004) at pc=0x0169c3c9, pid=164, tid=3544
6: #
6: # JRE version: Java(TM) SE Runtime Environment (7.0_45-b18) (build 1.7.0_45-b18)
6: # Java VM: Java HotSpot(TM) Client VM (24.45-b08 mixed mode windows-x86 )
6: # Problematic frame:
6: # C  0x0169c3c9
6: #
6: # Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
6: #
6: # An error report file with more information is saved as:
6: # C:\Users\afield\Documents\GitHub\jdg-cpp-client\build\hs_err_pid164.log
6: #
6: # If you would like to submit a bug report, please visit:
6: #   http://bugreport.sun.com/bugreport/crash.jsp
6: #

The ctest log using the ER7 libraries contains this error message:
6: ===============================================
6:     SWIG Tests
6:     Tests run: 41, Failures: 5, Skips: 0
6: ===============================================
6: 
6: 15:31:48,945 INFO  [HotRodTestingUtil$] (main) Start server in port 15260
6: 15:31:48,945 INFO  [DefaultExpirationTest] (main) Started server on port: 15260
6: [thread 1880 also had an error]
6: [thread 1896 also had an error]
6: #
6: # A fatal error has been detected by the Java Runtime Environment:
6: #
6: #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0160a9df, pid=3636, tid=3904
6: #
6: # JRE version: Java(TM) SE Runtime Environment (7.0_45-b18) (build 1.7.0_45-b18)
6: # Java VM: Java HotSpot(TM) Client VM (24.45-b08 mixed mode windows-x86 )
6: # Problematic frame:
6: # C  0x0160a9df
6: #
6: # Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
6: #
6: # An error report file with more information is saved as:
6: # C:\Users\afield\Documents\GitHub\jdg-cpp-client\build\hs_err_pid3636.log
6: #
6: # If you would like to submit a bug report, please visit:
6: #   http://bugreport.sun.com/bugreport/crash.jsp
6: # The crash happened outside the Java Virtual Machine in native code.
6: # See problematic frame for where to report the bug.
6: #

Comment 4 Ion Savin 2014-12-12 11:52:33 UTC
I cannot reproduce this issue. Tried for both jdg-6.4.x branch and using the source code from the JDG 6.4.0.ER7 [1] using the following steps:

$ mkdir build_windows
$ cd build_windows
$ cmake -G "Visual Studio 10" ..
$ cmake --build .
$ ctest -V

I did try this on a win64 OS using the win32 compiler and jvm. Are you using a win32 OS or what else is different in your setup?

[1] http://download.eng.bos.redhat.com/devel/jdg/stage/JDG-6.4.0-ER7/jboss-datagrid-6.4.0.ER7-remote-cpp-client-sources.zip

Comment 5 Alan Field 2014-12-12 14:40:04 UTC
(In reply to Ion Savin from comment #4)
> I cannot reproduce this issue. Tried for both jdg-6.4.x branch and using the
> source code from the JDG 6.4.0.ER7 [1] using the following steps:
> 
> $ mkdir build_windows
> $ cd build_windows
> $ cmake -G "Visual Studio 10" ..
> $ cmake --build .
> $ ctest -V
> 
> I did try this on a win64 OS using the win32 compiler and jvm. Are you using
> a win32 OS or what else is different in your setup?
> 
> [1]
> http://download.eng.bos.redhat.com/devel/jdg/stage/JDG-6.4.0-ER7/jboss-
> datagrid-6.4.0.ER7-remote-cpp-client-sources.zip

Ion, I am using a 32-bit OS. I can try again today to reproduce this, but I was getting the crash with the code I built and with the released binaries from ER7.

Comment 6 Alan Field 2014-12-18 16:50:34 UTC
Created attachment 970659 [details]
Crash log with libraries from the ER7 build (12-18)

Comment 8 Ion Savin 2015-01-08 13:59:32 UTC
Alan, can you try building with --config RelWithDebInfo. I think the problem is caused by a local build using --config Debug and testing against the released library which uses RelWithDebInfo.

This is the only scenario under which I can reproduce the issue. If that's the case that the issue can be closed as the hotrod-jni.dll and library .dlls need to be compiled using the same configuration.

Comment 9 Alan Field 2015-01-08 14:22:44 UTC
(In reply to Ion Savin from comment #8)
> Alan, can you try building with --config RelWithDebInfo. I think the problem
> is caused by a local build using --config Debug and testing against the
> released library which uses RelWithDebInfo.
> 
> This is the only scenario under which I can reproduce the issue. If that's
> the case that the issue can be closed as the hotrod-jni.dll and library
> .dlls need to be compiled using the same configuration.

Hey Ion, When I am testing a release build, I use --config Release for my local code, but I can try using that flag instead.

Comment 10 Alan Field 2015-01-08 19:32:36 UTC
If I use the --config RelWithDebInfo flag when building, then I don't see the crash anymore on Win7 32-bit with JDG 6.4 ER8. Closing