-
Notifications
You must be signed in to change notification settings - Fork 789
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
Fix 32-bit unit test failures #310
Conversation
Seems to say
|
Yes... it still fails, but now because of #306, will try to fix it too in this pr. |
PS: you have to click on a package version on the bottom, the click on one of the platform that fails, then buildlog to see all the details. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!!
@jlblancoc please delete the branch when you’re done with it. I just realized maybe you were using it to push more changes. SymmetricBlockMatrkx is pretty core: wondering what other bugs were caused by this. Although, now that I think more about it, I’m wondering whether I pushed merge too fast: is the semantics of the constructor to deliver a zero matrix, or just an allocated one? Perhaps the bug was caused by code that incorrectly assumed it would get zeros... |
Branch deleted, no problem. I guess the "problem" here is that SymmetricBlockMatrix expects to get all its entries correctly initialized by its caller, and this QP code was NOT filling in some of the entries... (it was filled to zeros, apparently only by accidents that depends on the architecture and Eigen implementation).
Not sure what's better. |
I think we actually have a flag that enables the Nan behavior. I think perhaps in debug the flag should be on by default, and we fill everything with Nan, while in Release we just allocated. Comments? |
I'll think about this. There may be another way to fix the bug that doesn't mask possible future bugs due to uninitialized values... |
Definitively, I think you are right, Frank: it might be better NOT to initialize to zeros, since it has a cost (vs. leave uninitialized) that may be relevant when building very large graphs. And all just to "fix" apparently buggy code... Will come back with another PR. |
Closes #308
Closes #306
Don't merge until these PPA builds end, to confirm that the test errors have been fixed.
Update: It can be merged now, PPA builds pass!
This change is