-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[GCI-142] Fix various memory leaks. #3083
Conversation
some this is breaking,check the CI logs |
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.
Hii @ribhavsharma as per the logs, the setters are causing the travis-ci build to fail, I think it's happening because you forgot to address the possibility of null values. Be sure to address those :)
@dkayiwa could you please review this? The travis CI is showing errors in the pre-existing code, |
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.
@ribhavsharma You need to rename your commit message and this PR title based on what you are modifying, or the Sonar issue you're fixing.
} | ||
|
||
public void setStartDate(Date startDate) { | ||
this.startDate = startDate; | ||
this.startDate = startDate != null ? new Date(startDate.getTime()) : null; |
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.
What is the difference between this and this.startDate = new Date(startDate.getTime())
?
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.
hey @f4ww4z. The current code addresses the possibility of null values too.
Have you taken a look at the travis build failure? |
@dkayiwa Yes I did. There are errors in the pre-existing code. |
Can you check the travis, it's about your code referring to |
…those issues null GCI-142 minor fix del xtra brace + deepcopy setters GCI-142 fix travis
@dkayiwa @suthagar23 Could you please review this? |
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.
LGTM
…those issues (openmrs#3083) null GCI-142 minor fix del xtra brace + deepcopy setters GCI-142 fix travis
Description of what I changed
Deep-copied the Getters and Setters to fix 4 instances of the following issue.
L40
-new org.openmrs.CohortMembership(Integer, Date) may expose internal representation by storing an externally mutable object into CohortMembership.startDateL97
-org.openmrs.CohortMembership.getStartDate() may expose internal representation by returning CohortMembership.startDateL101
-org.openmrs.CohortMembership.setStartDate(Date) may expose internal representation by storing an externally mutable object into CohortMembership.startDateL105
-org.openmrs.CohortMembership.getEndDate() may expose internal representation by returning CohortMembership.endDateIssue I worked on
Checklist: I completed these to help reviewers :)
My pull request only contains ONE single commit
(the number above, next to the 'Commits' tab is 1).
No? -> read here on how to squash multiple commits into one
My IDE is configured to follow the code style of this project.
No? Unsure? -> configure your IDE, format the code and add the changes with
git add . && git commit --amend
I have added tests to cover my changes. (If you refactored
existing code that was well tested you do not have to add tests)
No? -> write tests and add them to this commit
git add . && git commit --amend
I ran
mvn clean package
right before creating this pull request andadded all formatting changes to my commit.
No? -> execute above command
All new and existing tests passed.
No? -> figure out why and add the fix to your commit. It is your responsibility to make sure your code works.
My pull request is based on the latest changes of the master branch.
No? Unsure? -> execute command
git pull --rebase upstream master