Bug 129369
| Summary: | Calls to set* methods from within proxy classes don't flag modified | ||
|---|---|---|---|
| Product: | [Retired] Red Hat Network | Reporter: | Mike McCune <mmccune> |
| Component: | RHN/R&D | Assignee: | Ryan Bloom <rbb> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Fanny Augustin <fmoquete> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | RHN Devel | CC: | rbb |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2004-10-22 18:41:01 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 125080 | ||
*** Bug 129685 has been marked as a duplicate of this bug. *** we're using hibernate now, so this isn't an issue. |
If you have a proxy persistence class, for example, Session, and from within SessionImpl you call a public set method on one of the columns: public void setExpiresMillis(long expIn) { setExpires(expIn / 1000); } the call to setExpires doesn't actually flag the Proxy that this method has been called, it only gets flagged if someone from outside the class calls it. This means that if you call: s.setExpiresMillis(someval); SessionFactory.commit(s); it will not save the expiration time. The only way to store a new expiration time on a Session object is to call setExpires(). This means we can't have convienience methods on classes if this isn't fixed.