Hi Thomas.
Regarding this:
>> who has the hard reference to the data identifier
>
> The chain is:
> PropertyImpl -> InternalValue -> BLOBInDataStore -> DataIdentifier
Who holds on to the PropertyImpl? Is this reference removed before or after the
save?
Im asking because while testing the code I came up with the following scenario:
JR | GC
------------------------|---------------------
add properties |
| set cut-point as part of the next scan / mark
cycle
| (won't mark recently added properties, because
they're unsaved)
save |
(evict) |
| deleteUnused()
(evict): identifiers evicted from the weak hash map
Is it possible that the identifiers get removed from the weak hash map
immediatly after the save
operation? Or the identifiers can't be removed because a hard reference to them
(ie, to the
PropertyImpl object) is kept somewhere in the Jackrabbit core? When is this
reference removed?
In testing, this is possible to do by calling the clearInUse() method you
provided. But what about a
real scenario?
I hope you can understand me. If not, I'll try to explain better.
Regards,
Esteban Franqueiro
[EMAIL PROTECTED]
Notice: This email message, together with any attachments, may contain
information of BEA Systems, Inc., its subsidiaries and affiliated
entities, that may be confidential, proprietary, copyrighted and/or legally
privileged, and is intended solely for the use of the individual or entity
named in this message. If you are not the intended recipient, and have received
this message in error, please immediately return this by email and then delete
it.