[
https://issues.apache.org/jira/browse/OAK-11444?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17929671#comment-17929671
]
Daniel Iancu commented on OAK-11444:
------------------------------------
Getting back to this discussion
{quote}I'm a bit concerned here, because this introduces a new document store
collection, which has never happened before.
{quote}
[~reschke] can't we introduce a collection in a `hidden` way, e. g. we
introduce a new _MongoDocumentStore_ API that returns the new collection
without declaring it's type in the *Collections* class, e.g.
{code:java}
<T extends Document> MongoCollection<BasicDBObject> getHiddenCollection(String
collection) {
return this.connection.getCollection(collection);
} {code}
This API won't be public, it's usage is limited only to support Mongo related
implementations like FullGcBin
> [full-gc] Save document id and empty properties names before deletion
> ----------------------------------------------------------------------
>
> Key: OAK-11444
> URL: https://issues.apache.org/jira/browse/OAK-11444
> Project: Jackrabbit Oak
> Issue Type: Story
> Components: mongomk
> Reporter: Daniel Iancu
> Priority: Major
>
> Store document ID and empty properties names into a dedicated *_bin*
> collection
> before physically deletion from Mongo nodes collection during full gc.
> Motivation behind this change is that in case of accidentally deleting data
> that should have not been deleted (not garbage) this `log` of removed
> documents and properties will help the complete restoration from backup.
> A separate collection was preferred instead of logging to files because is
> more reliable. Logs usually needs to be exported to platform like Splunk and
> the process does not guarantee that all logs are saved.
> The data saved in *_bin* collection is temporary, the cleaning can be done
> via setting document TTL or by using an external job to remove it.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)