Skip to content

NH-3957 - fix 2nd level query cache bug and test cases #564

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

Merged
merged 1 commit into from
Mar 26, 2017

Conversation

fredericDelaporte
Copy link
Member

Test cases and fix for NH-3957: Equals overrides vulnerable to hashcode collisions have been added in a bunch of result transformers classes.
This causes the second level query cache to be unreliable: we may get a wrong cached query result from it. Granted, due to the way those hashcode are calculated, is it very unlikely, but still possible. This cause a dire situation where an application thoroughly tested may starts failing till restarted, without much possibilities of reproducing the issue afterward.

Test cases only test Equality, they do not showcase second level query cache failures which may result from those Equality failures, contrary to those of NH-3954 for the proxy cache. But there is no reason the second level query cache would not have been affected by those Equals failures.

@fredericDelaporte
Copy link
Member Author

MySql failure is a timeout. To me, it looks like a test infrastructure frequent failure rather than a regression. The same trouble with the same test happened for PR, though it does not changes the same things at all.

@fredericDelaporte fredericDelaporte changed the title NH-3957: fix 2nd level query cache bug and test cases NH-3957 - fix 2nd level query cache bug and test cases Mar 18, 2017
@fredericDelaporte fredericDelaporte merged commit 909af9e into nhibernate:master Mar 26, 2017
@fredericDelaporte fredericDelaporte deleted the NH-3957 branch March 26, 2017 10:31
@fredericDelaporte fredericDelaporte added this to the 5.0.0 milestone Mar 26, 2017
@hazzik
Copy link
Member

hazzik commented Apr 28, 2017

@fredericDelaporte the JIRA task wasn't closed. The automatic transitions happen only to Bugs.

@fredericDelaporte
Copy link
Member Author

Ok, I was not knowing it. I had already seen it but was just believing there was sometime some delay...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants