Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visual Studio 2015 Update 3: Release 32bit: 54 tests failed #366

Closed
anatoly-spb opened this issue Mar 29, 2017 · 9 comments
Closed

Visual Studio 2015 Update 3: Release 32bit: 54 tests failed #366

anatoly-spb opened this issue Mar 29, 2017 · 9 comments

Comments

@anatoly-spb
Copy link
Contributor

anatoly-spb commented Mar 29, 2017

I have generated RxCpp Visual Studio 2015 solution with CMake 3.7.2 and built 32bit Release:

cd RxCpp
mkdir build
cd build
cmake -G "Visual Studio 14 2015" -T v140_xp ..
cmake --build . --target ALL_BUILD --config Release
cd build\test
ctest -C Release --no-compress-output -T Test

As the result the 54 tests failed with the same error (it does not matter with/without v140_xp):

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rxcpp_test_coroutine.exe is a Catch v1.7.2 host application.
Run with -? for options

-------------------------------------------------------------------------------
Scenario: coroutine completes
     Given: a source
-------------------------------------------------------------------------------
D:\jenkins\jobs\RxCpp\workspace\Rx\v2\test\subscriptions\coroutine.cpp(8)
...............................................................................

D:\jenkins\jobs\RxCpp\workspace\Rx\v2\test\subscriptions\coroutine.cpp(8): FAILED:
due to a fatal error condition:
  SIGSEGV - Segmentation violation signal

===============================================================================
test cases: 1 | 1 failed
assertions: 1 | 1 failed

Any hints?

Thank in advance,
Anatoly Shirokov.

@gchudnov
Copy link
Contributor

Hi @anatoly-spb,

Have you tried building the DEBUG version? Is the problem persists?

Thank you,
Grigoriy

@anatoly-spb
Copy link
Contributor Author

@gchudnov, I have no problem with the debug build. There are all tests passed.

@gchudnov
Copy link
Contributor

Investigating further, can you build a Release version for x64 without v140_xp toolset (like this)?
Does it fail on tests?

@anatoly-spb
Copy link
Contributor Author

anatoly-spb commented Mar 30, 2017

With the 64 bit release without v140_xp there is no problem, all tests passed.

@gchudnov
Copy link
Contributor

hm.. so it looks v140_xp platform causes the problem. Is that right?

@anatoly-spb
Copy link
Contributor Author

Let me check release 32 bit build without v140_xp.

@anatoly-spb
Copy link
Contributor Author

anatoly-spb commented Mar 30, 2017

I have checked. Actually we have problem with 32 bit release (it does not matter with/without v140_xp):

cmake -G "Visual Studio 14 2015"
cmake --build . --target ALL_BUILD --config Release
....
Test project D:/jenkins/jobs/RxCpp/workspace/build_vs_2015_32bit/build/test
      Start  1: coroutine
 1/65 Test  #1: coroutine ........................***Failed    1.70 sec
      Start  2: observer
 2/65 Test  #2: observer .........................   Passed    0.00 sec
      Start  3: subscription
 3/65 Test  #3: subscription .....................   Passed    0.02 sec
      Start  4: subject
 4/65 Test  #4: subject ..........................***Failed    0.19 sec
      Start  5: create
 5/65 Test  #5: create ...........................   Passed    0.00 sec
      Start  6: defer
 6/65 Test  #6: defer ............................   Passed    0.02 sec
      Start  7: empty
 7/65 Test  #7: empty ............................   Passed    0.00 sec
      Start  8: interval
 8/65 Test  #8: interval .........................   Passed    0.02 sec
      Start  9: scope
 9/65 Test  #9: scope ............................***Failed    0.17 sec
      Start 10: timer
10/65 Test #10: timer ............................   Passed    0.02 sec
      Start 11: all
11/65 Test #11: all ..............................***Failed    0.19 sec
      Start 12: any
12/65 Test #12: any ..............................***Failed    0.19 sec
      Start 13: amb
13/65 Test #13: amb ..............................***Failed    0.17 sec
      Start 14: amb_variadic
14/65 Test #14: amb_variadic .....................***Failed    0.20 sec
      Start 15: buffer
15/65 Test #15: buffer ...........................***Failed    0.16 sec
      Start 16: combine_latest
16/65 Test #16: combine_latest ...................***Failed    0.17 sec
      Start 17: concat
17/65 Test #17: concat ...........................***Failed    0.17 sec
      Start 18: concat_map
18/65 Test #18: concat_map .......................   Passed    0.02 sec
      Start 19: contains
19/65 Test #19: contains .........................***Failed    0.19 sec
      Start 20: debounce
20/65 Test #20: debounce .........................***Failed    0.17 sec
      Start 21: default_if_empty
21/65 Test #21: default_if_empty .................***Failed    0.17 sec
      Start 22: delay
22/65 Test #22: delay ............................***Failed    0.17 sec
      Start 23: distinct
23/65 Test #23: distinct .........................***Failed    0.23 sec
      Start 24: distinct_until_changed
24/65 Test #24: distinct_until_changed ...........***Failed    0.27 sec
      Start 25: element_at
25/65 Test #25: element_at .......................***Failed    0.19 sec
      Start 26: exists
26/65 Test #26: exists ...........................***Failed    0.19 sec
      Start 27: filter
27/65 Test #27: filter ...........................***Failed    0.17 sec
      Start 28: finally
28/65 Test #28: finally ..........................***Failed    0.17 sec
      Start 29: flat_map
29/65 Test #29: flat_map .........................   Passed    0.02 sec
      Start 30: group_by
30/65 Test #30: group_by .........................***Failed    0.22 sec
      Start 31: ignore_elements
31/65 Test #31: ignore_elements ..................***Failed    0.19 sec
      Start 32: is_empty
32/65 Test #32: is_empty .........................***Failed    0.17 sec
      Start 33: lift
33/65 Test #33: lift .............................***Failed    0.19 sec
      Start 34: map
34/65 Test #34: map ..............................***Failed    0.19 sec
      Start 35: merge
35/65 Test #35: merge ............................***Failed    0.16 sec
      Start 36: observe_on
36/65 Test #36: observe_on .......................***Failed    0.17 sec
      Start 37: on_error_resume_next
37/65 Test #37: on_error_resume_next .............***Failed    0.17 sec
      Start 38: pairwise
38/65 Test #38: pairwise .........................   Passed    0.00 sec
      Start 39: publish
39/65 Test #39: publish ..........................***Failed    0.23 sec
      Start 40: reduce
40/65 Test #40: reduce ...........................***Failed    0.19 sec
      Start 41: repeat
41/65 Test #41: repeat ...........................   Passed    0.02 sec
      Start 42: replay
42/65 Test #42: replay ...........................***Failed    0.19 sec
      Start 43: retry
43/65 Test #43: retry ............................***Failed    0.19 sec
      Start 44: sample
44/65 Test #44: sample ...........................***Failed    0.17 sec
      Start 45: scan
45/65 Test #45: scan .............................***Failed    0.19 sec
      Start 46: sequence_equal
46/65 Test #46: sequence_equal ...................***Failed    0.19 sec
      Start 47: skip
47/65 Test #47: skip .............................***Failed    0.19 sec
      Start 48: skip_last
48/65 Test #48: skip_last ........................***Failed    0.19 sec
      Start 49: skip_until
49/65 Test #49: skip_until .......................***Failed    0.20 sec
      Start 50: start_with
50/65 Test #50: start_with .......................***Failed    0.19 sec
      Start 51: subscribe_on
51/65 Test #51: subscribe_on .....................***Failed    0.20 sec
      Start 52: switch_if_empty
52/65 Test #52: switch_if_empty ..................***Failed    0.17 sec
      Start 53: switch_on_next
53/65 Test #53: switch_on_next ...................***Failed    0.20 sec
      Start 54: take
54/65 Test #54: take .............................***Failed    0.17 sec
      Start 55: take_last
55/65 Test #55: take_last ........................***Failed    0.17 sec
      Start 56: take_until
56/65 Test #56: take_until .......................***Failed    0.17 sec
      Start 57: take_while
57/65 Test #57: take_while .......................***Failed    0.17 sec
      Start 58: tap
58/65 Test #58: tap ..............................***Failed    0.16 sec
      Start 59: time_interval
59/65 Test #59: time_interval ....................***Failed    0.17 sec
      Start 60: timeout
60/65 Test #60: timeout ..........................***Failed    0.16 sec
      Start 61: timestamp
61/65 Test #61: timestamp ........................***Failed    0.20 sec
      Start 62: with_latest_from
62/65 Test #62: with_latest_from .................***Failed    0.16 sec
      Start 63: window
63/65 Test #63: window ...........................***Failed    0.20 sec
      Start 64: window_toggle
64/65 Test #64: window_toggle ....................***Failed    0.16 sec
      Start 65: zip
65/65 Test #65: zip ..............................***Failed    0.17 sec

17% tests passed, 54 tests failed out of 65

@anatoly-spb anatoly-spb changed the title Visual Studio 2015 Update 3: Release: 54 tests failed Visual Studio 2015 Update 3: Release 32bit: 54 tests failed Mar 30, 2017
@gchudnov
Copy link
Contributor

right, I was able to reproduce this issue {x86 and VS2017}.

Not sure I can make a quick fix. Need some time to look into the issue... :\

@anatoly-spb
Copy link
Contributor Author

anatoly-spb commented Mar 30, 2017

if it helps, I have catched segmentation violation in RelWithDebInfo:

	rxcpp_test_subject.exe!std::_Ref_count_obj<rxcpp::subscription::subscription_state<rxcpp::detail::composite_subscription_inner> >::_Destroy() Line 913	C++
 	rxcpp_test_subject.exe!rxcpp::composite_subscription::~composite_subscription()	C++
 	rxcpp_test_subject.exe!rxcpp::schedulers::worker::~worker()	C++
 	vcruntime140.dll!__CallSettingFrame@12�()	Unknown
 	vcruntime140.dll!___FrameUnwindToState�()	Unknown
 	vcruntime140.dll!___InternalCxxFrameHandler�()	Unknown
 	vcruntime140.dll!___CxxFrameHandler�()	Unknown
 	ntdll.dll!ExecuteHandler2@20�()	Unknown
 	ntdll.dll!ExecuteHandler@20�()	Unknown
 	ntdll.dll!_NtOpenKey@12�()	Unknown
 	ntdll.dll!ExecuteHandler2@20�()	Unknown
 	ntdll.dll!ExecuteHandler@20�()	Unknown
 	ntdll.dll!_NtQueryValueKey@24�()	Unknown
 	KernelBase.dll!_QueryCompatibilityRegistry@4�()	Unknown
 	msvcp140.dll!___crtInitializeSRWLock�()	Unknown
 	ntdll.dll!_ZwAllocateVirtualMemory@24�()	Unknown
 	rxcpp_test_subject.exe!Catch::TestCase::TestCase(const Catch::TestCase & other) Line 159	C++
 	msvcp140.dll!std::basic_ios<char,struct std::char_traits<char> >::widen(char)	Unknown
 	msvcp140.dll!std::basic_ios<char,struct std::char_traits<char> >::init(class std::basic_streambuf<char,struct std::char_traits<char> > *,bool)	Unknown
 	msvcp140.dll!std::basic_ostream<char,struct std::char_traits<char> >::basic_ostream<char,struct std::char_traits<char> >(class std::basic_streambuf<char,struct std::char_traits<char> > *,bool)	Unknown

Also here is Dr. Memory log for RelWithDebInfo: https://pastebin.com/YuKHKGn0

anatoly-spb added a commit to anatoly-spb/RxCpp that referenced this issue Mar 30, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants