Skip to content

Conversation

@rpavlik
Copy link
Contributor

@rpavlik rpavlik commented Dec 27, 2021

Not sure why this fails as follows in the the test suite with asan:

cd /home/ryan/src/third-party/solvespace/build/test && /home/ryan/src/third-party/solvespace/build/bin/solvespace-testsuite
Missing (absent) translation for group-name'#references'
Missing (absent) translation for group-name'sketch-in-plane'
Reserved room for 0 symbols in B, used 0 with 0 params used.
AddressSanitizer:DEADLYSIGNAL
=================================================================
==69704==ERROR: AddressSanitizer: SEGV on unknown address 0x60400010c410 (pc 0x5609599c70d0 bp 0x6160000001b8 sp 0x7ffe014a1950 T0)
==69704==The signal is caused by a READ memory access.
    #0 0x5609599c70d0 in Eigen::SparseMatrix<SolveSpace::Expr*, 0, int>::insert(long, long) extlib/eigen/Eigen/src/SparseCore/SparseMatrix.h:1286
    #1 0x56095999e592 in operator() src/system.cpp:124
    #2 0x56095999e592 in iterateUsedParameters<SolveSpace::System::WriteJacobian(int)::<lambda(const SolveSpace::hParam&, int)> > src/system.cpp:63
    #3 0x56095999e592 in SolveSpace::System::WriteJacobian(int) src/system.cpp:118
    #4 0x5609599add9a in SolveSpace::System::Solve(SolveSpace::Group*, int*, int*, SolveSpace::List<SolveSpace::hConstraint>*, bool, bool, bool) src/system.cpp:527
    #5 0x56095974c4f8 in SolveSpace::SolveSpaceUI::SolveGroup(SolveSpace::hGroup, bool) src/generate.cpp:539
    #6 0x56095974c706 in SolveSpace::SolveSpaceUI::SolveGroupAndReport(SolveSpace::hGroup, bool) src/generate.cpp:493
    #7 0x56095975e66d in SolveSpace::SolveSpaceUI::GenerateAll(SolveSpace::SolveSpaceUI::Generate, bool, bool) src/generate.cpp:273
    #8 0x560959760b4b in SolveSpace::SolveSpaceUI::GenerateAll(SolveSpace::SolveSpaceUI::Generate, bool, bool) src/generate.cpp:196
    #9 0x5609595035b1 in SolveSpace::SolveSpaceUI::AfterNewFile() src/solvespace.cpp:516
    #10 0x560959457bdf in SolveSpace::Test::Helper::CheckLoad(char const*, int, char const*) test/harness.cpp:216
    #11 0x5609594fb106 in Test_normal_migrate_from_v22 test/constraint/length_difference/test.cpp:10
    #12 0x560959415a50 in std::function<void (SolveSpace::Test::Helper*)>::operator()(SolveSpace::Test::Helper*) const /usr/include/c++/10/bits/std_function.h:622
    #13 0x560959415a50 in main test/harness.cpp:373
    #14 0x7fd8fb4c5d09 in __libc_start_main ../csu/libc-start.c:308
    #15 0x56095944ead9 in _start (/home/ryan/src/third-party/solvespace/build/bin/solvespace-testsuite+0xb36ad9)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV extlib/eigen/Eigen/src/SparseCore/SparseMatrix.h:1286 in Eigen::SparseMatrix<SolveSpace::Expr*, 0, int>::insert(long, long)
==69704==ABORTING

Was looking for that sweet, sweet algorithmic improvement

rpavlik and others added 26 commits December 26, 2021 21:15
1. We are making FoldConstants first, so we are copying less amount of data in DeepCopyWithParamsAsPointers.
2. Since we already perform DeepCopyWithParamsAsPointers, PartialWrt already produces params as pointers
(Split out from earlier "Eigen library integration" commit)
Split from previous large 'Eigen library integration' commit.
Co-authored-by: Ryan Pavlik <ryan.pavlik@collabora.com>
Co-authored-by: Koen Schmeets <hello@koenschmeets.nl>
@ruevs ruevs self-requested a review November 27, 2023 04:20
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

Successfully merging this pull request may close these issues.

3 participants