Bug #3806
Persistence fails when objects and/or lazy loading are involved...
Status: | Resolved | Start date: | 2009-06-30 | |
---|---|---|---|---|
Priority: | Must have | Due date: | ||
Assigned To: | Karsten Dambekalns | % Done: | 100% |
|
Category: | Persistence | |||
Target version: | TYPO3 Flow Base Distribution - 1.0 alpha 2 | |||
PHP Version: | Complexity: | |||
Has patch: | Affected Flow version: |
Description
The fix for #3451 in r2591 has some side effects - even after adding something to a proxied SplObjectStorage it is not marked as dirty, thus the content is no longer persisted.
- activating a lazy loading proxy multiple times (as can happen if it is handed out without being activated first) marks it clean in the parent multiple times
- memorizeCleanState() needs to clone objects not just copy them, so comparison later makes sense
- isDirty() must not use strict comparison on objects - a clone is never same, but can only be equal
Associated revisions
[FIX] FLOW3 (Persistence): dirty checking and activation of lazy loading work as intended now, fixes #3806
History
#1 Updated by Karsten Dambekalns about 6 years ago
- Subject changed from Persistence fails (partly) when LazyLoadingProxy is involved to Persistence fails when objects and/or lazy loading are involved...
#2 Updated by Karsten Dambekalns about 6 years ago
- Status changed from Accepted to Resolved
- % Done changed from 0 to 100
Applied in changeset r2691.