[jira] [Commented] (OAK-10685) reduce overall usage of (shaded) Guava

2024-09-12 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17881380#comment-17881380
 ] 

Rishabh Daim commented on OAK-10685:


{code}
   1 import org.apache.jackrabbit.guava.common.collect.ImmutableListMultimap;
   1 import org.apache.jackrabbit.guava.common.escape.Escapers;
   1 import org.apache.jackrabbit.guava.common.graph.SuccessorsFunction;
   1 import org.apache.jackrabbit.guava.common.graph.Traverser;
   1 import org.apache.jackrabbit.guava.common.hash.Funnel;
   1 import org.apache.jackrabbit.guava.common.hash.Funnels;
   1 import org.apache.jackrabbit.guava.common.hash.HashCode;
   1 import org.apache.jackrabbit.guava.common.hash.PrimitiveSink;
   1 import org.apache.jackrabbit.guava.common.primitives.Chars;
   1 import org.apache.jackrabbit.guava.common.primitives.UnsignedBytes;
   1 import 
org.apache.jackrabbit.guava.common.util.concurrent.AbstractListeningExecutorService;
   1 import org.apache.jackrabbit.guava.common.util.concurrent.FutureCallback;
   1 import org.apache.jackrabbit.guava.common.util.concurrent.Monitor.Guard;
   1 import static 
org.apache.jackrabbit.guava.common.base.Preconditions.checkPositionIndex;
   1 import static 
org.apache.jackrabbit.guava.common.base.Stopwatch.createUnstarted;
   1 import static 
org.apache.jackrabbit.guava.common.base.Throwables.getStackTraceAsString;
   1 import static 
org.apache.jackrabbit.guava.common.cache.CacheBuilder.newBuilder;
   1 import static 
org.apache.jackrabbit.guava.common.cache.RemovalCause.COLLECTED;
   1 import static 
org.apache.jackrabbit.guava.common.cache.RemovalCause.EXPIRED;
   1 import static org.apache.jackrabbit.guava.common.cache.RemovalCause.SIZE;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Collections2.transform;
   1 import static 
org.apache.jackrabbit.guava.common.collect.ImmutableMap.copyOf;
   1 import static org.apache.jackrabbit.guava.common.collect.Iterables.all;
   1 import static org.apache.jackrabbit.guava.common.collect.Iterables.cycle;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Iterables.elementsEqual;
   1 import static org.apache.jackrabbit.guava.common.collect.Iterables.limit;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Iterables.mergeSorted;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Iterators.partition;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Iterators.peekingIterator;
   1 import static org.apache.jackrabbit.guava.common.collect.Iterators.size;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Lists.newArrayListWithExpectedSize;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Queues.newArrayBlockingQueue;
   1 import static 
org.apache.jackrabbit.guava.common.collect.Queues.newArrayDeque;
   1 import static org.apache.jackrabbit.guava.common.collect.Sets.filter;
   1 import static org.apache.jackrabbit.guava.common.collect.Sets.intersection;
   1 import static org.apache.jackrabbit.guava.common.escape.Escapers.builder;
   1 import static org.apache.jackrabbit.guava.common.io.ByteStreams.read;
   1 import static org.apache.jackrabbit.guava.common.io.FileWriteMode.APPEND;
   1 import static org.apache.jackrabbit.guava.common.io.Files.asByteSink;
   1 import static 
org.apache.jackrabbit.guava.common.math.DoubleMath.fuzzyCompare;
   1 import static 
org.apache.jackrabbit.guava.common.math.DoubleMath.fuzzyEquals;
   1 import static 
org.apache.jackrabbit.guava.common.util.concurrent.Atomics.newReference;
   2 import org.apache.jackrabbit.guava.common.base.CaseFormat;
   2 import org.apache.jackrabbit.guava.common.base.Throwables;
   2 import org.apache.jackrabbit.guava.common.cache.AbstractCache;
   2 import org.apache.jackrabbit.guava.common.collect.HashMultimap;
   2 import org.apache.jackrabbit.guava.common.collect.LinkedListMultimap;
   2 import org.apache.jackrabbit.guava.common.hash.BloomFilter;
   2 import org.apache.jackrabbit.guava.common.hash.Hasher;
   2 import org.apache.jackrabbit.guava.common.io.BaseEncoding;
   2 import org.apache.jackrabbit.guava.common.util.concurrent.Futures;
   2 import 
org.apache.jackrabbit.guava.common.util.concurrent.ListenableFutureTask;
   2 import org.apache.jackrabbit.guava.common.util.concurrent.Striped;
   2 import static 
org.apache.jackrabbit.guava.common.base.Stopwatch.createStarted;
   2 import static org.apache.jackrabbit.guava.common.base.Suppliers.ofInstance;
   2 import static org.apache.jackrabbit.guava.common.collect.Iterables.isEmpty;
   2 import static org.apache.jackrabbit.guava.common.collect.Iterators.concat;
   2 import static 
org.apache.jackrabbit.guava.common.collect.Iterators.singletonIterator;
   2 import static org.apache.jackrabbit.guava.common.collect.Lists.reverse;
   2 import static org.apache.jackrabbit.guava.common.collect.Maps.filterValues;
   2 import static 
org.apache.jackrabbit

[jira] [Created] (OAK-11118) Remove usage of Guava Sets.newTreeSet

2024-09-12 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-8:
--

 Summary: Remove usage of Guava Sets.newTreeSet
 Key: OAK-8
 URL: https://issues.apache.org/jira/browse/OAK-8
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11117) Remove usage of Guava Sets.newLinkedHashSet

2024-09-12 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-7:
--

 Summary: Remove usage of Guava Sets.newLinkedHashSet
 Key: OAK-7
 URL: https://issues.apache.org/jira/browse/OAK-7
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11116) Remove usage of Guava Sets.newHashSetWithExpectedSize()

2024-09-12 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-6:
--

 Summary: Remove usage of Guava Sets.newHashSetWithExpectedSize()
 Key: OAK-6
 URL: https://issues.apache.org/jira/browse/OAK-6
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11103) Remove usage of Guava Lists.newArrayListWithCapacity

2024-09-12 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11103?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11103.

Fix Version/s: 1.70.0
   Resolution: Fixed

> Remove usage of Guava Lists.newArrayListWithCapacity
> 
>
> Key: OAK-11103
> URL: https://issues.apache.org/jira/browse/OAK-11103
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.70.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11112) Remove usage of Guava Maps.newHashMapWithExpectedSize()

2024-09-12 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-2:
--

 Summary: Remove usage of Guava Maps.newHashMapWithExpectedSize()
 Key: OAK-2
 URL: https://issues.apache.org/jira/browse/OAK-2
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-11073) Create conversion utils in oak-commons to convert iterables/iterators to set/list/stream

2024-09-12 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-11073?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17881283#comment-17881283
 ] 

Rishabh Daim commented on OAK-11073:


{quote}1. The name "CollectionUtils" is (a) potentially conflicting with a 
similar class in commons-collections4, and it also repeat the package name- 
Hoow about "Adapter(s)", "Conversion(s)" or something like that?
{quote}
I would recommend ConversionUtils
{quote}2. We could change the "toStream(Iterable)" to use 
[https://docs.oracle.com/en%2Fjava%2Fjavase%2F11%2Fdocs%2Fapi%2F%2F/java.base/java/util/stream/Stream.html#iterate(T,java.util.function.Predicate,java.util.function.UnaryOperator])
 (that would also eliminate the intermediate step to create an Iterator).
{quote}
This would be a bit tricky, let's consider the following example.
{code:java}
Iterator iter = List.of("A", "B", "C").iterator();

Stream.iterate(iter.next(), str -> iter.hasNext(), str -> iter.next()) 
.forEach(System.out::println);{code}
It prints only A & B while skipping C [1].

 

 

[1] 
[https://stackoverflow.com/questions/72480687/java-9-stream-iteratet-seed-predicate-super-t-hasnext-unaryoperatort-ne]
 

 

> Create conversion utils in oak-commons to convert iterables/iterators to 
> set/list/stream
> 
>
> Key: OAK-11073
> URL: https://issues.apache.org/jira/browse/OAK-11073
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>  Components: commons
>Reporter: Rishabh Daim
>Assignee: Julian Reschke
>Priority: Major
> Fix For: 1.70.0
>
> Attachments: stream-it.diff
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11101) Remove usage of Guava ImmutableSet.of()

2024-09-12 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11101.

Fix Version/s: 1.70.0
   Resolution: Fixed

> Remove usage of Guava ImmutableSet.of()
> ---
>
> Key: OAK-11101
> URL: https://issues.apache.org/jira/browse/OAK-11101
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.70.0
>
>
> The usage of *ImmutableSet.of()* can be replaced with *Set.of().*
>  
> *Note: ImmutableSet.contains()* allows *null* but *Set.contains()* doesn't.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11102) Remove usage of Guava ImmutableList.of()

2024-09-11 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11102:
---
Description: The usage of *ImmutableList.of()* can be replaced with 
*List.of().*  (was: The usage of ImmutableList can be replaced with 
*List.of().*)

> Remove usage of Guava ImmutableList.of()
> 
>
> Key: OAK-11102
> URL: https://issues.apache.org/jira/browse/OAK-11102
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> The usage of *ImmutableList.of()* can be replaced with *List.of().*



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11102) Remove usage of Guava ImmutableList.of()

2024-09-11 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11102:
---
Summary: Remove usage of Guava ImmutableList.of()  (was: Remove usage of 
Guava ImmutableList)

> Remove usage of Guava ImmutableList.of()
> 
>
> Key: OAK-11102
> URL: https://issues.apache.org/jira/browse/OAK-11102
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> The usage of ImmutableList can be replaced with *List.of().*



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11101) Remove usage of Guava ImmutableSet.of()

2024-09-10 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11101:
---
Description: 
The usage of *ImmutableSet.of()* can be replaced with *Set.of().*

 

*Note: ImmutableSet.contains()* allows *null* but *Set.contains()* doesn't.

  was:The usage of *ImmutableSet.of()* can be replaced with *Set.of().*


> Remove usage of Guava ImmutableSet.of()
> ---
>
> Key: OAK-11101
> URL: https://issues.apache.org/jira/browse/OAK-11101
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> The usage of *ImmutableSet.of()* can be replaced with *Set.of().*
>  
> *Note: ImmutableSet.contains()* allows *null* but *Set.contains()* doesn't.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11101) Remove usage of Guava ImmutableSet.of()

2024-09-10 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11101:
---
Summary: Remove usage of Guava ImmutableSet.of()  (was: Remove usage of 
Guava ImmutableSet)

> Remove usage of Guava ImmutableSet.of()
> ---
>
> Key: OAK-11101
> URL: https://issues.apache.org/jira/browse/OAK-11101
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> The usage of ImmutableSet can be replaced with *Set.of().*



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11024) Remove usage of Guava newHashSet

2024-09-10 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11024.

Fix Version/s: 1.70.0
   Resolution: Fixed

> Remove usage of Guava newHashSet
> 
>
> Key: OAK-11024
> URL: https://issues.apache.org/jira/browse/OAK-11024
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.70.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11102) Remove usage of Guava ImmutableList

2024-09-10 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11102:
---
Description: The usage of ImmutableList can be replaced with *List.of().*

> Remove usage of Guava ImmutableList
> ---
>
> Key: OAK-11102
> URL: https://issues.apache.org/jira/browse/OAK-11102
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> The usage of ImmutableList can be replaced with *List.of().*



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10741) Improve logging for detailedGC

2024-09-10 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10741.

Fix Version/s: 1.70.0
   Resolution: Fixed

> Improve logging for detailedGC
> --
>
> Key: OAK-10741
> URL: https://issues.apache.org/jira/browse/OAK-10741
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.70.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11103) Remove usage of Guava Lists.newArrayListWithCapacity

2024-09-09 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-11103:
--

 Summary: Remove usage of Guava Lists.newArrayListWithCapacity
 Key: OAK-11103
 URL: https://issues.apache.org/jira/browse/OAK-11103
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11073) Create conversion utils in oak-commons to convert iterables/iterators to set/list

2024-09-02 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11073?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11073:
---
Parent: OAK-10685
Issue Type: Technical task  (was: Bug)

> Create conversion utils in oak-commons to convert iterables/iterators to 
> set/list
> -
>
> Key: OAK-11073
> URL: https://issues.apache.org/jira/browse/OAK-11073
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11073) Create conversion utils in oak-commons to convert iterables/iterators to set/list

2024-09-02 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-11073:
--

 Summary: Create conversion utils in oak-commons to convert 
iterables/iterators to set/list
 Key: OAK-11073
 URL: https://issues.apache.org/jira/browse/OAK-11073
 Project: Jackrabbit Oak
  Issue Type: Bug
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-11023) Remove usage of Guava newArrayList

2024-09-02 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-11023?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17878518#comment-17878518
 ] 

Rishabh Daim commented on OAK-11023:


To change Iterators: {color:#1d1c1d}IteratorUtils.toList(iterator);{color}
To change Iterables: {color:#1d1c1d}IterableUtils.toList(iterable);{color}

> Remove usage of Guava newArrayList
> --
>
> Key: OAK-11023
> URL: https://issues.apache.org/jira/browse/OAK-11023
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Julian Reschke
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11068) oak-run revisions fullGC should set (and have an option for) fullGCMode

2024-08-29 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11068?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11068.

Fix Version/s: 1.68.0
   Resolution: Fixed

> oak-run revisions fullGC should set (and have an option for) fullGCMode
> ---
>
> Key: OAK-11068
> URL: https://issues.apache.org/jira/browse/OAK-11068
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: oak-run
>Reporter: Stefan Egli
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.68.0
>
>
> Currently for "oak-run revisions  fullGC" the fullGCMode is 0 - which 
> means it doesn't clean up anything. We need to set this mode, ideally via a 
> new option, but the default shouldn't be 0 (for oak-run revisions)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-11068) oak-run revisions fullGC should set (and have an option for) fullGCMode

2024-08-28 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11068?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-11068:
--

Assignee: Rishabh Daim

> oak-run revisions fullGC should set (and have an option for) fullGCMode
> ---
>
> Key: OAK-11068
> URL: https://issues.apache.org/jira/browse/OAK-11068
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: oak-run
>Reporter: Stefan Egli
>Assignee: Rishabh Daim
>Priority: Major
>
> Currently for "oak-run revisions  fullGC" the fullGCMode is 0 - which 
> means it doesn't clean up anything. We need to set this mode, ideally via a 
> new option, but the default shouldn't be 0 (for oak-run revisions)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10792) Rename DetailedGC to FullGC

2024-08-19 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17875050#comment-17875050
 ] 

Rishabh Daim commented on OAK-10792:


Added : [https://github.com/apache/jackrabbit-oak/pull/1644]

> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
> Fix For: 1.70.0
>
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10792) Rename DetailedGC to FullGC

2024-08-19 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10792.

Fix Version/s: 1.70.0
   Resolution: Fixed

> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
> Fix For: 1.70.0
>
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10745) Osgi Config for a delayFactor while removing fullGC

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10745:
--

Assignee: Rishabh Daim

> Osgi Config for a delayFactor while removing fullGC
> ---
>
> Key: OAK-10745
> URL: https://issues.apache.org/jira/browse/OAK-10745
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> We expect FullGC to put considerable load on mongo, thus in order to throttle 
> this operation, we would introduce an OSGi config to a delay within fullGC 
> iterations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10745) Osgi Config for a delayFactor while removing fullGC

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10745:
---
Summary: Osgi Config for a delayFactor while removing fullGC  (was: Osgi 
Config for a delayFactor while removing detailedGC)

> Osgi Config for a delayFactor while removing fullGC
> ---
>
> Key: OAK-10745
> URL: https://issues.apache.org/jira/browse/OAK-10745
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>
> We expect DetailedGC to put considerable load on mongo, thus in order to 
> throttle this operation, we would introduce an OSGi config to a delay within 
> detailedGC iterations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10747) Provide support to reset fullGC

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10747.

Resolution: Implemented

> Provide support to reset fullGC
> ---
>
> Key: OAK-10747
> URL: https://issues.apache.org/jira/browse/OAK-10747
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10746) Provide support to reset dry-run mode.

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10746?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10746.

Resolution: Implemented

> Provide support to reset dry-run mode.
> --
>
> Key: OAK-10746
> URL: https://issues.apache.org/jira/browse/OAK-10746
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>
> We might need to reset dryRun mode in case we want to test some changes or we 
> want to delete another type of garbage.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10744) OSGi config to control the fullGC mode

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10744.

Resolution: Implemented

> OSGi config to control the fullGC mode
> --
>
> Key: OAK-10744
> URL: https://issues.apache.org/jira/browse/OAK-10744
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>
> We currently have 4 different modes to delete old revisions.
> We need to have a OSGi config to select which mode to use.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10747) Provide support to reset fullGC

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10747:
---
Summary: Provide support to reset fullGC  (was: Provide support to reset 
detailedGC)

> Provide support to reset fullGC
> ---
>
> Key: OAK-10747
> URL: https://issues.apache.org/jira/browse/OAK-10747
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10745) Osgi Config for a delayFactor while removing fullGC

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10745:
---
Description: We expect FullGC to put considerable load on mongo, thus in 
order to throttle this operation, we would introduce an OSGi config to a delay 
within fullGC iterations.  (was: We expect FullGC to put considerable load on 
mongo, thus in order to throttle this operation, we would introduce an OSGi 
config to a delay within detailedGC iterations.)

> Osgi Config for a delayFactor while removing fullGC
> ---
>
> Key: OAK-10745
> URL: https://issues.apache.org/jira/browse/OAK-10745
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>
> We expect FullGC to put considerable load on mongo, thus in order to throttle 
> this operation, we would introduce an OSGi config to a delay within fullGC 
> iterations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10745) Osgi Config for a delayFactor while removing fullGC

2024-08-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10745:
---
Description: We expect FullGC to put considerable load on mongo, thus in 
order to throttle this operation, we would introduce an OSGi config to a delay 
within detailedGC iterations.  (was: We expect DetailedGC to put considerable 
load on mongo, thus in order to throttle this operation, we would introduce an 
OSGi config to a delay within detailedGC iterations.)

> Osgi Config for a delayFactor while removing fullGC
> ---
>
> Key: OAK-10745
> URL: https://issues.apache.org/jira/browse/OAK-10745
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>
> We expect FullGC to put considerable load on mongo, thus in order to throttle 
> this operation, we would introduce an OSGi config to a delay within 
> detailedGC iterations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10744) OSGi config to control the fullGC mode

2024-08-13 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10744:
---
Summary: OSGi config to control the fullGC mode  (was: OSGi config to 
control the detailedGC mode)

> OSGi config to control the fullGC mode
> --
>
> Key: OAK-10744
> URL: https://issues.apache.org/jira/browse/OAK-10744
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Priority: Major
>
> We currently have 4 different modes to delete old revisions.
> We need to have a OSGi config to select which mode to use.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11024) Remove usage of Guava newHashSet

2024-08-13 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-11024:
--

 Summary: Remove usage of Guava newHashSet
 Key: OAK-11024
 URL: https://issues.apache.org/jira/browse/OAK-11024
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11023) Remove usage of Guava newArrayList

2024-08-13 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-11023:
--

 Summary: Remove usage of Guava newArrayList
 Key: OAK-11023
 URL: https://issues.apache.org/jira/browse/OAK-11023
 Project: Jackrabbit Oak
  Issue Type: Technical task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Reopened] (OAK-10792) Rename DetailedGC to FullGC

2024-08-13 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reopened OAK-10792:


> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11021) Remove unused instance in VersionGCRecommendations

2024-08-13 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11021?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11021.

Fix Version/s: 1.68.0
   Resolution: Fixed

> Remove unused instance in VersionGCRecommendations
> --
>
> Key: OAK-11021
> URL: https://issues.apache.org/jira/browse/OAK-11021
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: documentmk
>Reporter: Stefan Egli
>Assignee: Stefan Egli
>Priority: Minor
> Fix For: 1.68.0
>
>
> VersionGCRecommendations currently has 2 unused instance variables : 
> fullGCTimestamp, fullGCDryRunTimestamp. They are only used in the 
> constructor. Hence we can define them there.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11015) Create fullGC Mode for empty properties only

2024-08-13 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11015?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11015.

Fix Version/s: 1.68.0
   Resolution: Fixed

> Create fullGC Mode for empty properties only
> 
>
> Key: OAK-11015
> URL: https://issues.apache.org/jira/browse/OAK-11015
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Critical
> Fix For: 1.68.0
>
>
> Currently, we don't have any mode for removing only empty properties.
> We need this mode to rollout full GC with only removing empty props.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-11014) Write test case to prove fullGC working correctly with bundled property nodes

2024-08-12 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-11014:
---
Fix Version/s: 1.68.0

> Write test case to prove fullGC working correctly with bundled property nodes
> -
>
> Key: OAK-11014
> URL: https://issues.apache.org/jira/browse/OAK-11014
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Critical
> Fix For: 1.68.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-11014) Write test case to prove fullGC working correctly with bundled property nodes

2024-08-12 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-11014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-11014.

Resolution: Fixed

> Write test case to prove fullGC working correctly with bundled property nodes
> -
>
> Key: OAK-11014
> URL: https://issues.apache.org/jira/browse/OAK-11014
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Critical
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10921) Fix race condition while resetting fullGC variables from oak-run

2024-08-12 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10921:
---
Description: 
We have a potential race condition if we try to reset fullGC database variables 
from oak-run while fullGC is already running.
 
_*fullGCTimeStamp &*_ _*fullGCId*_ are database properties inside *settings* 
collection under *versionGC* document which would gets overridden if we reset 
fullGC from oak-run if it is still running.
 
To fix this, we need to replace the updateAndCreate api (to reset them) with 
findAndModify, this will ensure that

  was:
We have a potential race condition if we try to reset fullGC database variables 
from oak-run while fullGC is already running. 

Below database properties inside *settings* collection under *versionGC* 
document. variables get overridden from the AEM full GC cycle.


> Fix race condition while resetting fullGC variables from oak-run
> 
>
> Key: OAK-10921
> URL: https://issues.apache.org/jira/browse/OAK-10921
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> We have a potential race condition if we try to reset fullGC database 
> variables from oak-run while fullGC is already running.
>  
> _*fullGCTimeStamp &*_ _*fullGCId*_ are database properties inside *settings* 
> collection under *versionGC* document which would gets overridden if we reset 
> fullGC from oak-run if it is still running.
>  
> To fix this, we need to replace the updateAndCreate api (to reset them) with 
> findAndModify, this will ensure that



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10921) Fix race condition while resetting fullGC variables from oak-run

2024-08-12 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10921:
---
Description: 
We have a potential race condition if we try to reset fullGC database variables 
from oak-run while fullGC is already running. 

Below database properties inside *settings* collection under *versionGC* 
document. variables get overridden from the AEM full GC cycle.

> Fix race condition while resetting fullGC variables from oak-run
> 
>
> Key: OAK-10921
> URL: https://issues.apache.org/jira/browse/OAK-10921
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> We have a potential race condition if we try to reset fullGC database 
> variables from oak-run while fullGC is already running. 
> Below database properties inside *settings* collection under *versionGC* 
> document. variables get overridden from the AEM full GC cycle.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11015) Create fullGC Mode for empty properties only

2024-08-12 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-11015:
--

 Summary: Create fullGC Mode for empty properties only
 Key: OAK-11015
 URL: https://issues.apache.org/jira/browse/OAK-11015
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim
Assignee: Rishabh Daim


Currently, we don't have any mode for removing only empty properties.

We need this mode to rollout full GC with only removing empty props.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-11014) Write test case to prove fullGC working correctly with bundled property nodes

2024-08-12 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-11014:
--

 Summary: Write test case to prove fullGC working correctly with 
bundled property nodes
 Key: OAK-11014
 URL: https://issues.apache.org/jira/browse/OAK-11014
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10921) Fix race condition while resetting fullGC variables from oak-run

2024-06-27 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10921?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17860392#comment-17860392
 ] 

Rishabh Daim commented on OAK-10921:


Below are 2 options that can be used to avoid race-condition:
 # I would propose that we make both AEM fullGC cycle & OAK-RUN fullGC cycle 
mutually exclusive and this would avoid any race condition while reset fullGC 
vars from OAK run while AEM fullGC is running.
 # We could change the API used to update fullGC vars from AEM fullGC cycle 
from createOrUpdate to findAndUpdate and for very first cycle set them inside 
[VersionGCRecommendations|https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/VersionGCRecommendations.java#L161-L185]
 class

> Fix race condition while resetting fullGC variables from oak-run
> 
>
> Key: OAK-10921
> URL: https://issues.apache.org/jira/browse/OAK-10921
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10921) Fix race condition while resetting fullGC variables from oak-run

2024-06-27 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10921:
--

 Summary: Fix race condition while resetting fullGC variables from 
oak-run
 Key: OAK-10921
 URL: https://issues.apache.org/jira/browse/OAK-10921
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10916) Provide support for include/exclude paths for fullGC in oak-run

2024-06-26 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10916.

Fix Version/s: 1.66.0
   Resolution: Fixed

> Provide support for include/exclude paths for fullGC in oak-run
> ---
>
> Key: OAK-10916
> URL: https://issues.apache.org/jira/browse/OAK-10916
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.66.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10919) Fix DocumentNodeStoreConfigTest unit case

2024-06-26 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10919?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10919.

Fix Version/s: 1.66.0
   Resolution: Fixed

> Fix DocumentNodeStoreConfigTest unit case
> -
>
> Key: OAK-10919
> URL: https://issues.apache.org/jira/browse/OAK-10919
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.66.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10919) Fix DocumentNodeStoreConfigTest unit case

2024-06-26 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10919:
--

 Summary: Fix DocumentNodeStoreConfigTest unit case
 Key: OAK-10919
 URL: https://issues.apache.org/jira/browse/OAK-10919
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10896) Add osgi config for removal of deleted properties and orphaned nodes

2024-06-26 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10896:
--

Assignee: Rishabh Daim

> Add osgi config for removal of deleted properties and orphaned nodes
> 
>
> Key: OAK-10896
> URL: https://issues.apache.org/jira/browse/OAK-10896
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: documentmk
>Reporter: Horia Poradici
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.66.0
>
>
> OSGI configuration options should be added for full garbage collection 
> options GAP_ORPHANS and EMPTY_PROPERTIES.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10916) Provide support for include/exclude paths for fullGC in oak-run

2024-06-24 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10916:
--

 Summary: Provide support for include/exclude paths for fullGC in 
oak-run
 Key: OAK-10916
 URL: https://issues.apache.org/jira/browse/OAK-10916
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10896) Add osgi config for removal of deleted properties and orphaned nodes

2024-06-24 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10896:
---
Summary: Add osgi config for removal of deleted properties and orphaned 
nodes  (was: Add feature toggle for removal of deleted properties and orphaned 
nodes)

> Add osgi config for removal of deleted properties and orphaned nodes
> 
>
> Key: OAK-10896
> URL: https://issues.apache.org/jira/browse/OAK-10896
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: documentmk
>Reporter: Horia Poradici
>Priority: Major
>
> Feature toggle / OSGI configuration options should be added for full garbage 
> collection options GAP_ORPHANS and EMPTY_PROPERTIES.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10896) Add osgi config for removal of deleted properties and orphaned nodes

2024-06-24 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10896:
---
Description: OSGI configuration options should be added for full garbage 
collection options GAP_ORPHANS and EMPTY_PROPERTIES.  (was: Feature toggle / 
OSGI configuration options should be added for full garbage collection options 
GAP_ORPHANS and EMPTY_PROPERTIES.)

> Add osgi config for removal of deleted properties and orphaned nodes
> 
>
> Key: OAK-10896
> URL: https://issues.apache.org/jira/browse/OAK-10896
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: documentmk
>Reporter: Horia Poradici
>Priority: Major
>
> OSGI configuration options should be added for full garbage collection 
> options GAP_ORPHANS and EMPTY_PROPERTIES.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10896) Add feature toggle for removal of deleted properties and orphaned nodes

2024-06-24 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10896?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10896:
---
Epic Link: OAK-10739

> Add feature toggle for removal of deleted properties and orphaned nodes
> ---
>
> Key: OAK-10896
> URL: https://issues.apache.org/jira/browse/OAK-10896
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: documentmk
>Reporter: Horia Poradici
>Priority: Major
>
> Feature toggle / OSGI configuration options should be added for full garbage 
> collection options GAP_ORPHANS and EMPTY_PROPERTIES.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10912) Make include/exclude paths for fullgc configurable via OSGI Config

2024-06-24 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10912?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10912.

Fix Version/s: 1.66.0
   Resolution: Fixed

> Make include/exclude paths for fullgc configurable via OSGI Config
> --
>
> Key: OAK-10912
> URL: https://issues.apache.org/jira/browse/OAK-10912
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.66.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10912) Make include/exclude paths for fullgc configurable via OSGI Config

2024-06-21 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10912:
--

 Summary: Make include/exclude paths for fullgc configurable via 
OSGI Config
 Key: OAK-10912
 URL: https://issues.apache.org/jira/browse/OAK-10912
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10826) Misleading warning about missing checkpoint

2024-05-24 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10826?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10826:
--

Assignee: Rishabh Daim

> Misleading warning about missing checkpoint
> ---
>
> Key: OAK-10826
> URL: https://issues.apache.org/jira/browse/OAK-10826
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: store-composite
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>
> The CompositeNodeStore logs a WARN message when 
> {{NodeStore.checkpointInfo()}} is called with a reference to a checkpoint 
> that does not exist. The contract says, in this case the implementation will 
> return an empty map. The CompositeNodeStore behaves as specified, but the log 
> message indicates something is wrong.
> One occasion when this can happen is the cleanup of unused checkpoints. See 
> stack trace of the exception logged by the CompositeNodeStore. The cleanup 
> first lists the checkpoints and then gets the info for each of the 
> checkpoints. It may happen that one of the checkpoints is released in the 
> meantime and {{NodeStore.checkpointInfo()}} is called for a checkpoint that 
> does not exist anymore. The cleanup code is is working fine in this case, but 
> the warning is misleading.
> {noformat}
> 19.09.2019 05:21:00.686 *WARN* 
> [sling-oak-2-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async] 
> org.apache.jackrabbit.oak.composite.CompositeNodeStore Checkpoint 
> r16d47f757cd-0-2 doesn't exist. Debug info:
> Mount: [default]
> Checkpoints:
>  - r16d47f76b54-1-2: {composite.checkpoint.expires=1655270460244, 
> creator=AsyncIndexUpdate, composite.checkpoint.created=1568870460244, 
> created=2019-09-19T05:21:00.244Z, name=async, 
> thread=sling-oak-2-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async}
>  - r16d47f76b54-0-2: {composite.checkpoint.expires=1655270460244, 
> creator=AsyncIndexUpdate, composite.checkpoint.created=1568870460244, 
> created=2019-09-19T05:21:00.244Z, name=fulltext-async, 
> thread=sling-oak-1-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-fulltext-async}
> /:async node: {fulltext-async = r16d47f76b54-0-2, 
> fulltext-async-LastIndexedTo = 2019-09-19T05:21:00.244Z, async-temp: [...], 
> fulltext-async-temp: [...], async = r16d47f76b54-1-2, async-LastIndexedTo = 
> 2019-09-19T05:21:00.244Z}
> Mount: libs
> Checkpoints:
>  - f1d323f2-8a6f-4369-bf5f-608862f8b3b9: {creator=AsyncIndexUpdate, 
> created=2019-09-18T18:56:41.352Z, name=async, 
> thread=sling-oak-5-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async}
>  - 6ae116de-3eb0-4041-b4d1-f629e26d669c: {creator=AsyncIndexUpdate, 
> created=2019-09-18T18:56:41.353Z, name=fulltext-async, 
> thread=sling-oak-1-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-fulltext-async}
> /:async node: {async-temp: [...], fulltext-async-temp: [...], 
> fulltext-async-LastIndexedTo = 2019-09-18T18:56:41.353Z, async = 
> f1d323f2-8a6f-4369-bf5f-608862f8b3b9, fulltext-async = 
> 6ae116de-3eb0-4041-b4d1-f629e26d669c, async-LastIndexedTo = 
> 2019-09-18T18:56:41.352Z}
> java.lang.Exception: null
>   at 
> org.apache.jackrabbit.oak.composite.CompositeNodeStore.checkpointInfo(CompositeNodeStore.java:246)
>  [org.apache.jackrabbit.oak-store-composite:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.cleanUpCheckpoints(AsyncIndexUpdate.java:675)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.maybeCleanUpCheckpoints(AsyncIndexUpdate.java:646)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.runWhenPermitted(AsyncIndexUpdate.java:607)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:432)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:347)
>  [org.apache.sling.commons.scheduler:2.7.4]
>   at org.quartz.core.JobRunShell.run(JobRunShell.java:202) 
> [org.apache.sling.commons.scheduler:2.7.4]
>   at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>   at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>   at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10826) Misleading warning about missing checkpoint

2024-05-24 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10826?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10826.

Fix Version/s: 1.66.0
   Resolution: Fixed

> Misleading warning about missing checkpoint
> ---
>
> Key: OAK-10826
> URL: https://issues.apache.org/jira/browse/OAK-10826
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: store-composite
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
> Fix For: 1.66.0
>
>
> The CompositeNodeStore logs a WARN message when 
> {{NodeStore.checkpointInfo()}} is called with a reference to a checkpoint 
> that does not exist. The contract says, in this case the implementation will 
> return an empty map. The CompositeNodeStore behaves as specified, but the log 
> message indicates something is wrong.
> One occasion when this can happen is the cleanup of unused checkpoints. See 
> stack trace of the exception logged by the CompositeNodeStore. The cleanup 
> first lists the checkpoints and then gets the info for each of the 
> checkpoints. It may happen that one of the checkpoints is released in the 
> meantime and {{NodeStore.checkpointInfo()}} is called for a checkpoint that 
> does not exist anymore. The cleanup code is is working fine in this case, but 
> the warning is misleading.
> {noformat}
> 19.09.2019 05:21:00.686 *WARN* 
> [sling-oak-2-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async] 
> org.apache.jackrabbit.oak.composite.CompositeNodeStore Checkpoint 
> r16d47f757cd-0-2 doesn't exist. Debug info:
> Mount: [default]
> Checkpoints:
>  - r16d47f76b54-1-2: {composite.checkpoint.expires=1655270460244, 
> creator=AsyncIndexUpdate, composite.checkpoint.created=1568870460244, 
> created=2019-09-19T05:21:00.244Z, name=async, 
> thread=sling-oak-2-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async}
>  - r16d47f76b54-0-2: {composite.checkpoint.expires=1655270460244, 
> creator=AsyncIndexUpdate, composite.checkpoint.created=1568870460244, 
> created=2019-09-19T05:21:00.244Z, name=fulltext-async, 
> thread=sling-oak-1-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-fulltext-async}
> /:async node: {fulltext-async = r16d47f76b54-0-2, 
> fulltext-async-LastIndexedTo = 2019-09-19T05:21:00.244Z, async-temp: [...], 
> fulltext-async-temp: [...], async = r16d47f76b54-1-2, async-LastIndexedTo = 
> 2019-09-19T05:21:00.244Z}
> Mount: libs
> Checkpoints:
>  - f1d323f2-8a6f-4369-bf5f-608862f8b3b9: {creator=AsyncIndexUpdate, 
> created=2019-09-18T18:56:41.352Z, name=async, 
> thread=sling-oak-5-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async}
>  - 6ae116de-3eb0-4041-b4d1-f629e26d669c: {creator=AsyncIndexUpdate, 
> created=2019-09-18T18:56:41.353Z, name=fulltext-async, 
> thread=sling-oak-1-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-fulltext-async}
> /:async node: {async-temp: [...], fulltext-async-temp: [...], 
> fulltext-async-LastIndexedTo = 2019-09-18T18:56:41.353Z, async = 
> f1d323f2-8a6f-4369-bf5f-608862f8b3b9, fulltext-async = 
> 6ae116de-3eb0-4041-b4d1-f629e26d669c, async-LastIndexedTo = 
> 2019-09-18T18:56:41.352Z}
> java.lang.Exception: null
>   at 
> org.apache.jackrabbit.oak.composite.CompositeNodeStore.checkpointInfo(CompositeNodeStore.java:246)
>  [org.apache.jackrabbit.oak-store-composite:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.cleanUpCheckpoints(AsyncIndexUpdate.java:675)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.maybeCleanUpCheckpoints(AsyncIndexUpdate.java:646)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.runWhenPermitted(AsyncIndexUpdate.java:607)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:432)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:347)
>  [org.apache.sling.commons.scheduler:2.7.4]
>   at org.quartz.core.JobRunShell.run(JobRunShell.java:202) 
> [org.apache.sling.commons.scheduler:2.7.4]
>   at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>   at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>   at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10826) Misleading warning about missing checkpoint

2024-05-24 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10826?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17849212#comment-17849212
 ] 

Rishabh Daim commented on OAK-10826:


I have merged the PR, thanks for your contribution [~diancu] .

> Misleading warning about missing checkpoint
> ---
>
> Key: OAK-10826
> URL: https://issues.apache.org/jira/browse/OAK-10826
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: store-composite
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
> Fix For: 1.66.0
>
>
> The CompositeNodeStore logs a WARN message when 
> {{NodeStore.checkpointInfo()}} is called with a reference to a checkpoint 
> that does not exist. The contract says, in this case the implementation will 
> return an empty map. The CompositeNodeStore behaves as specified, but the log 
> message indicates something is wrong.
> One occasion when this can happen is the cleanup of unused checkpoints. See 
> stack trace of the exception logged by the CompositeNodeStore. The cleanup 
> first lists the checkpoints and then gets the info for each of the 
> checkpoints. It may happen that one of the checkpoints is released in the 
> meantime and {{NodeStore.checkpointInfo()}} is called for a checkpoint that 
> does not exist anymore. The cleanup code is is working fine in this case, but 
> the warning is misleading.
> {noformat}
> 19.09.2019 05:21:00.686 *WARN* 
> [sling-oak-2-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async] 
> org.apache.jackrabbit.oak.composite.CompositeNodeStore Checkpoint 
> r16d47f757cd-0-2 doesn't exist. Debug info:
> Mount: [default]
> Checkpoints:
>  - r16d47f76b54-1-2: {composite.checkpoint.expires=1655270460244, 
> creator=AsyncIndexUpdate, composite.checkpoint.created=1568870460244, 
> created=2019-09-19T05:21:00.244Z, name=async, 
> thread=sling-oak-2-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async}
>  - r16d47f76b54-0-2: {composite.checkpoint.expires=1655270460244, 
> creator=AsyncIndexUpdate, composite.checkpoint.created=1568870460244, 
> created=2019-09-19T05:21:00.244Z, name=fulltext-async, 
> thread=sling-oak-1-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-fulltext-async}
> /:async node: {fulltext-async = r16d47f76b54-0-2, 
> fulltext-async-LastIndexedTo = 2019-09-19T05:21:00.244Z, async-temp: [...], 
> fulltext-async-temp: [...], async = r16d47f76b54-1-2, async-LastIndexedTo = 
> 2019-09-19T05:21:00.244Z}
> Mount: libs
> Checkpoints:
>  - f1d323f2-8a6f-4369-bf5f-608862f8b3b9: {creator=AsyncIndexUpdate, 
> created=2019-09-18T18:56:41.352Z, name=async, 
> thread=sling-oak-5-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-async}
>  - 6ae116de-3eb0-4041-b4d1-f629e26d669c: {creator=AsyncIndexUpdate, 
> created=2019-09-18T18:56:41.353Z, name=fulltext-async, 
> thread=sling-oak-1-org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate-fulltext-async}
> /:async node: {async-temp: [...], fulltext-async-temp: [...], 
> fulltext-async-LastIndexedTo = 2019-09-18T18:56:41.353Z, async = 
> f1d323f2-8a6f-4369-bf5f-608862f8b3b9, fulltext-async = 
> 6ae116de-3eb0-4041-b4d1-f629e26d669c, async-LastIndexedTo = 
> 2019-09-18T18:56:41.352Z}
> java.lang.Exception: null
>   at 
> org.apache.jackrabbit.oak.composite.CompositeNodeStore.checkpointInfo(CompositeNodeStore.java:246)
>  [org.apache.jackrabbit.oak-store-composite:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.cleanUpCheckpoints(AsyncIndexUpdate.java:675)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.maybeCleanUpCheckpoints(AsyncIndexUpdate.java:646)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.runWhenPermitted(AsyncIndexUpdate.java:607)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:432)
>  [org.apache.jackrabbit.oak-core:1.16.0.R1867074]
>   at 
> org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:347)
>  [org.apache.sling.commons.scheduler:2.7.4]
>   at org.quartz.core.JobRunShell.run(JobRunShell.java:202) 
> [org.apache.sling.commons.scheduler:2.7.4]
>   at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>   at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>   at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10823) Support Oak-mongo.js remove functions with mongosh shell

2024-05-22 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10823.

Fix Version/s: 1.66.0
   Resolution: Fixed

> Support Oak-mongo.js remove functions with mongosh shell
> 
>
> Key: OAK-10823
> URL: https://issues.apache.org/jira/browse/OAK-10823
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.66.0
>
>
> Functions to remove nodes in the oak-mongo.js file don't work with the 
> *mongosh* shell.
> Reason: we are using *db.collection.remove()* to delete nodes which return *
> { acknowledged: true, deletedCount: 0 }
> * for _*mongosh*_ and *WriteResult(\{ "nRemoved" : 0 })* for _*mongo*_ shell.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10813) Improve performance of Oak-mongo.js function to remove/list nodes

2024-05-21 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10813?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10813.

Fix Version/s: 1.64.0
   Resolution: Fixed

> Improve performance of Oak-mongo.js function to remove/list nodes
> -
>
> Key: OAK-10813
> URL: https://issues.apache.org/jira/browse/OAK-10813
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
> Fix For: 1.64.0
>
>
> Functions *oak.removeDescendantsAndSelf()* & *oak.listRootTempNodes()* & 
> *oak.removeRootTempNodes()* are very slow.
> One thing that can be done to improve their performance is that we could use 
> projections to fetch only *_id*, since we only need *_id* to remove them.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10823) Support Oak-mongo.js remove functions with mongosh shell

2024-05-21 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10823:
--

 Summary: Support Oak-mongo.js remove functions with mongosh shell
 Key: OAK-10823
 URL: https://issues.apache.org/jira/browse/OAK-10823
 Project: Jackrabbit Oak
  Issue Type: Improvement
Reporter: Rishabh Daim
Assignee: Rishabh Daim


Functions to remove nodes in the oak-mongo.js file don't work with the 
*mongosh* shell.

Reason: we are using *db.collection.remove()* to delete nodes which return *

{ acknowledged: true, deletedCount: 0 }

* for _*mongosh*_ and *WriteResult(\{ "nRemoved" : 0 })* for _*mongo*_ shell.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10711) remove use of Guava Preconditions.checkNotNull()

2024-05-21 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10711?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10711:
--

Assignee: Rishabh Daim

> remove use of Guava Preconditions.checkNotNull()
> 
>
> Key: OAK-10711
> URL: https://issues.apache.org/jira/browse/OAK-10711
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Minor
>
> Can be replaced by JDK Objects.requireNotNull().



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10792) Rename DetailedGC to FullGC

2024-05-20 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10792.

Resolution: Fixed

> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10813) Improve performance of Oak-mongo.js function to remove/list nodes

2024-05-17 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10813:
--

 Summary: Improve performance of Oak-mongo.js function to 
remove/list nodes
 Key: OAK-10813
 URL: https://issues.apache.org/jira/browse/OAK-10813
 Project: Jackrabbit Oak
  Issue Type: Improvement
Reporter: Rishabh Daim
Assignee: Rishabh Daim


Functions *oak.removeDescendantsAndSelf()* & *oak.listRootTempNodes()* & 
*oak.removeRootTempNodes()* are very slow.

One thing that can be done to improve their performance is that we could use 
projections to fetch only *_id*, since we only need *_id* to remove them.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Reopened] (OAK-10792) Rename DetailedGC to FullGC

2024-05-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reopened OAK-10792:


> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10739) Provide Support for Full Garbage Collection in Mongo Document Store

2024-05-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10739?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10739:
---
Summary: Provide Support for Full Garbage Collection in Mongo Document 
Store  (was: Provide Support for Full Garbage Collection in Document Node Store)

> Provide Support for Full Garbage Collection in Mongo Document Store
> ---
>
> Key: OAK-10739
> URL: https://issues.apache.org/jira/browse/OAK-10739
> Project: Jackrabbit Oak
>  Issue Type: Epic
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>  Labels: DetailedGC
>
> We need to provide the support to collect & remove the full garbage for 
> DocumentNodeStore.
> At the time of creating this epic garbage includes orphaned nodes, deleted 
> properties, unmerged branch commits, and old revisions.
>  
> This list can be updated in case a new type of garbage is found.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10765) Fetch only id while checking for GAP orphan during verification

2024-05-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10765.

Resolution: Fixed

> Fetch only id while checking for GAP orphan during verification
> ---
>
> Key: OAK-10765
> URL: https://issues.apache.org/jira/browse/OAK-10765
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> Currently, we are fetching the complete document while checking whether it 
> exists or not during GAP orphan verification.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10792) Rename DetailedGC to FullGC

2024-05-14 Thread Rishabh Daim (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17846260#comment-17846260
 ] 

Rishabh Daim commented on OAK-10792:


[PR|https://github.com/apache/jackrabbit-oak/pull/1440] merged, closing the 
ticket.

> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10792) Rename DetailedGC to FullGC

2024-05-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10792.

Resolution: Fixed

> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10792) Rename DetailedGC to FullGC

2024-05-14 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10792:
--

Assignee: Rishabh Daim

> Rename DetailedGC to FullGC
> ---
>
> Key: OAK-10792
> URL: https://issues.apache.org/jira/browse/OAK-10792
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core
>Reporter: Daniel Iancu
>Assignee: Rishabh Daim
>Priority: Minor
>  Labels: DetailedGC
>
> Switching to FullGC instead of DetailedGC everywhere, method names, 
> constants, arguments etc



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10753) Add audit logger for DetailedGC

2024-04-16 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10753?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10753.

Resolution: Fixed

> Add audit logger for DetailedGC
> ---
>
> Key: OAK-10753
> URL: https://issues.apache.org/jira/browse/OAK-10753
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10751) Add compaction option via oak-run

2024-04-16 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10751.

Resolution: Fixed

> Add compaction option via oak-run
> -
>
> Key: OAK-10751
> URL: https://issues.apache.org/jira/browse/OAK-10751
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10763) DetailedGC is skipping deletion of deleted props for orphan nodes

2024-04-16 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10763?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10763.

Resolution: Fixed

> DetailedGC is skipping deletion of deleted props for orphan nodes
> -
>
> Key: OAK-10763
> URL: https://issues.apache.org/jira/browse/OAK-10763
> Project: Jackrabbit Oak
>  Issue Type: Bug
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> DetailedGC is skipping the deletion of deleted props for orphan nodes due to 
> the absence of ancestors in some cases.
> In case there is a gap in ancestors then we should pass the verification and 
> proceed with deletion of deleted props.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10765) Fetch only id while checking for GAP orphan during verification

2024-04-15 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10765:
--

 Summary: Fetch only id while checking for GAP orphan during 
verification
 Key: OAK-10765
 URL: https://issues.apache.org/jira/browse/OAK-10765
 Project: Jackrabbit Oak
  Issue Type: Improvement
Reporter: Rishabh Daim
Assignee: Rishabh Daim


Currently, we are fetching the complete document while checking whether it 
exists or not during GAP orphan verification.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10763) DetailedGC is skipping deletion of deleted props for orphan nodes

2024-04-15 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10763:
--

 Summary: DetailedGC is skipping deletion of deleted props for 
orphan nodes
 Key: OAK-10763
 URL: https://issues.apache.org/jira/browse/OAK-10763
 Project: Jackrabbit Oak
  Issue Type: Bug
Reporter: Rishabh Daim
Assignee: Rishabh Daim


DetailedGC is skipping the deletion of deleted props for orphan nodes due to 
the absence of ancestors in some cases.

In case there is a gap in ancestors then we should pass the verification and 
proceed with deletion of deleted props.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10753) Add audit logger for DetailedGC

2024-04-15 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10753?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10753:
--

Assignee: Rishabh Daim

> Add audit logger for DetailedGC
> ---
>
> Key: OAK-10753
> URL: https://issues.apache.org/jira/browse/OAK-10753
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10739) Provide Support for Full Garbage Collection in Document Node Store

2024-04-09 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10739?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10739:
---
Epic Name: Support for Full Garbage Collection  (was: Support for Detailed 
Garbage Collection)

> Provide Support for Full Garbage Collection in Document Node Store
> --
>
> Key: OAK-10739
> URL: https://issues.apache.org/jira/browse/OAK-10739
> Project: Jackrabbit Oak
>  Issue Type: Epic
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>  Labels: DetailedGC
>
> We need to provide the support to collect & remove the full garbage for 
> DocumentNodeStore.
> At the time of creating this epic garbage includes orphaned nodes, deleted 
> properties, unmerged branch commits, and old revisions.
>  
> This list can be updated in case a new type of garbage is found.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10739) Provide Support for Full Garbage Collection in Document Node Store

2024-04-09 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10739?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10739:
---
Summary: Provide Support for Full Garbage Collection in Document Node Store 
 (was: Provide Support for Detailed Garbage Collection in Document Node Store)

> Provide Support for Full Garbage Collection in Document Node Store
> --
>
> Key: OAK-10739
> URL: https://issues.apache.org/jira/browse/OAK-10739
> Project: Jackrabbit Oak
>  Issue Type: Epic
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>  Labels: DetailedGC
>
> We need to provide the support to collect & remove the full garbage for 
> DocumentNodeStore.
> At the time of creating this epic garbage includes orphaned nodes, deleted 
> properties, unmerged branch commits, and old revisions.
>  
> This list can be updated in case a new type of garbage is found.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (OAK-10751) Add compaction option via oak-run

2024-04-08 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim reassigned OAK-10751:
--

Assignee: Rishabh Daim

> Add compaction option via oak-run
> -
>
> Key: OAK-10751
> URL: https://issues.apache.org/jira/browse/OAK-10751
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10741) Improve logging for detailedGC

2024-04-05 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10741.

Resolution: Fixed

> Improve logging for detailedGC
> --
>
> Key: OAK-10741
> URL: https://issues.apache.org/jira/browse/OAK-10741
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10753) Add audit logger for DetailedGC

2024-04-05 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10753:
--

 Summary: Add audit logger for DetailedGC
 Key: OAK-10753
 URL: https://issues.apache.org/jira/browse/OAK-10753
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10740) Collect Orphan nodes deletion metrics

2024-04-04 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10740.

Resolution: Fixed

> Collect Orphan nodes deletion metrics
> -
>
> Key: OAK-10740
> URL: https://issues.apache.org/jira/browse/OAK-10740
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>  Components: documentmk
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>  Labels: DetailedGC
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10751) Add compaction option via oak-run

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10751:
--

 Summary: Add compaction option via oak-run
 Key: OAK-10751
 URL: https://issues.apache.org/jira/browse/OAK-10751
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10750) Dynamically evaluate FT for detailedGC & embedded verification mode

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10750:
--

 Summary: Dynamically evaluate FT for detailedGC & embedded 
verification mode
 Key: OAK-10750
 URL: https://issues.apache.org/jira/browse/OAK-10750
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10749) Perform a dry-run just once in a running cluster

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10749:
--

 Summary: Perform a dry-run just once in a running cluster
 Key: OAK-10749
 URL: https://issues.apache.org/jira/browse/OAK-10749
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim


We need to make sure that we run dryRun only once in a cluster.

Since dry run doesn't delete anything, it might come across the same garbage 
again in case those documents are modified.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10748) Improve statistics to collect which type of garbage is present/deleted.

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10748:
--

 Summary: Improve statistics to collect which type of garbage is 
present/deleted.
 Key: OAK-10748
 URL: https://issues.apache.org/jira/browse/OAK-10748
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim


This is a place holder ticket for improving stats collection instead of having 
different tickets for each type of stats.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10746) Provide support to reset dry-run mode.

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10746:
--

 Summary: Provide support to reset dry-run mode.
 Key: OAK-10746
 URL: https://issues.apache.org/jira/browse/OAK-10746
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim


We might need to reset dryRun mode in case we want to test some changes or we 
want to delete another type of garbage.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10747) Provide support to reset detailedGC

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10747:
--

 Summary: Provide support to reset detailedGC
 Key: OAK-10747
 URL: https://issues.apache.org/jira/browse/OAK-10747
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10745) Osgi Config for a delayFactor while removing detailedGC

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10745:
--

 Summary: Osgi Config for a delayFactor while removing detailedGC
 Key: OAK-10745
 URL: https://issues.apache.org/jira/browse/OAK-10745
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim


We expect DetailedGC to put considerable load on mongo, thus in order to 
throttle this operation, we would introduce an OSGi config to a delay within 
detailedGC iterations.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10744) OSGi config to control the detailedGC mode

2024-04-04 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10744:
--

 Summary: OSGi config to control the detailedGC mode
 Key: OAK-10744
 URL: https://issues.apache.org/jira/browse/OAK-10744
 Project: Jackrabbit Oak
  Issue Type: Task
Reporter: Rishabh Daim


We currently have 4 different modes to delete old revisions.

We need to have a OSGi config to select which mode to use.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10741) Improve logging for detailedGC

2024-04-03 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10741:
--

 Summary: Improve logging for detailedGC
 Key: OAK-10741
 URL: https://issues.apache.org/jira/browse/OAK-10741
 Project: Jackrabbit Oak
  Issue Type: Improvement
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10740) Collect Orphan nodes deletion metrics

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10740:
---
Labels: DetailedGC  (was: )

> Collect Orphan nodes deletion metrics
> -
>
> Key: OAK-10740
> URL: https://issues.apache.org/jira/browse/OAK-10740
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>  Components: documentmk
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>  Labels: DetailedGC
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (OAK-10740) Collect Orphan nodes deletion metrics

2024-04-03 Thread Rishabh Daim (Jira)
Rishabh Daim created OAK-10740:
--

 Summary: Collect Orphan nodes deletion metrics
 Key: OAK-10740
 URL: https://issues.apache.org/jira/browse/OAK-10740
 Project: Jackrabbit Oak
  Issue Type: New Feature
Reporter: Rishabh Daim
Assignee: Rishabh Daim






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (OAK-10740) Collect Orphan nodes deletion metrics

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim updated OAK-10740:
---
Component/s: documentmk

> Collect Orphan nodes deletion metrics
> -
>
> Key: OAK-10740
> URL: https://issues.apache.org/jira/browse/OAK-10740
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>  Components: documentmk
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10736) Collect DetailedGC Stats for DryRun mode

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10736.

Resolution: Fixed

> Collect DetailedGC Stats for DryRun mode
> 
>
> Key: OAK-10736
> URL: https://issues.apache.org/jira/browse/OAK-10736
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: documentmk
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>  Labels: DetailedGC
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10676) Consider late-writes while removing deleted properties during detailedGC

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10676.

Resolution: Fixed

> Consider late-writes while removing deleted properties during detailedGC
> 
>
> Key: OAK-10676
> URL: https://issues.apache.org/jira/browse/OAK-10676
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> We need to take into account the late-writes or inconsistent revisions while 
> removing deleted properties.
>  
> For e.g. In case the property is null in latest revision but that revision is 
> itself not valid/committed/broken, we might need to skip removal of such 
> properties.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10632) Make Embedded DetailedGC Configurable for dryRun mode

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10632.

Resolution: Fixed

> Make Embedded DetailedGC Configurable for dryRun mode
> -
>
> Key: OAK-10632
> URL: https://issues.apache.org/jira/browse/OAK-10632
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>  Components: documentmk
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>
> We have introduced embedded verification of detailedGC in both normal & 
> dryRun mode.
> We need to make embedded verification configurable in dryRun mode.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10199) Skeleton of an additional, extendable "detail" garbage collector based on only "_modified"

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10199.

Resolution: Fixed

> Skeleton of an additional, extendable "detail" garbage collector based on 
> only "_modified"
> --
>
> Key: OAK-10199
> URL: https://issues.apache.org/jira/browse/OAK-10199
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: documentmk
>Reporter: Stefan Egli
>Assignee: Rishabh Daim
>Priority: Major
>
> DocumentNodeStore's revision garbage collector currently doesn't clean up 
> 100% of garbage. Several of those gaps have so far been identified, including:
> * OAK-8646 : "Clean up changes from orphaned branch commits"
> * OAK-10193 : "Garbage collect deleted properties"
> The common aspect of the above is the fact that cleaning up that garbage on 
> an existing repository will mean to do a full scan of the entire repository, 
> to find and delete such garbage.
> The current working title for this is "detail gc"
> The ticket here is about creating a skeleton of a garbage collector that the 
> above, individual garbage types can then "hook into".
> There are two parts of the cleanup:
> * an initial, full repository scan
> * an iterative, continuous scan (eg after the above full scan has completed)
> The full repository scan is optional - one could decide to leave the garbage 
> and not worry about it (but enable the continuous scan and thus clean up 
> documents that are changed in the future lazily).
> While the two parts could in theory be based on a different query, it _can_ 
> also be done on the same query.
> One suggested query is to go through all documents where "_modified" is 
> between the previous gc run and an increment, but older than the 
> 'versionGcMaxAgeInSecs' (24h by default) - plus eg taking checkpoints into 
> account.
> A full repository scan is then characterized by setting this "previous gc 
> run" pointer to zero.
> In particular for the full repository scan it is necessary for the gc to run 
> in reasonably small batches - and apply a voluntary throttle, to avoid system 
> overload.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10633) Make Embedded DetailedGC Configurable in detailedGC

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10633.

Resolution: Fixed

> Make Embedded DetailedGC Configurable in detailedGC
> ---
>
> Key: OAK-10633
> URL: https://issues.apache.org/jira/browse/OAK-10633
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>  Components: documentmk
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (OAK-10710) Reset detailedGC settings after running the detailedGC cycle

2024-04-03 Thread Rishabh Daim (Jira)


 [ 
https://issues.apache.org/jira/browse/OAK-10710?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rishabh Daim resolved OAK-10710.

Resolution: Fixed

> Reset detailedGC settings after running the detailedGC cycle
> 
>
> Key: OAK-10710
> URL: https://issues.apache.org/jira/browse/OAK-10710
> Project: Jackrabbit Oak
>  Issue Type: New Feature
>Reporter: Rishabh Daim
>Assignee: Rishabh Daim
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


  1   2   >