[ https://issues.apache.org/jira/browse/OAK-7116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chetan Mehrotra updated OAK-7116: --------------------------------- Description: oak-run indexing for SegmentNodeStore currently require following steps while performing indexing against a repository which is in use [1] # Create checkpoint via MBean and pass it as part of cli args # Perform actual indexing with read only access to repo # Import the index via MBean operation As per current documented steps #1 and #3 are manual. This can potentially be simplified by directly using JMX operation from within oak-run as currently for accessing SegmentNodeStore oak-run needs to run on same host as actual application *JMX Access* JMX access can be done via following ways # Application using Oak has JMX remote ## Enabled and same info provided as cli args ## Not enabled - In such a case we can rely on ### pid and [local connection|https://stackoverflow.com/questions/13252914/how-to-connect-to-a-local-jmx-server-by-knowing-the-process-id] or [attach|https://github.com/nickman/jmxlocal] ### Or query all running java prcess jmx and check if SegmentNodeStore repo path is same as one provided in cli # Application using OAk *Proposed Approach* # Establish the JMX connection # Create checkpoint using the JMX connection programatically # Perform indexing with read only access # Import the index via JMX access With this indexing support for SegmentNodeStore would be at par with DocumentNodeStore in terms of ease of use [1] https://jackrabbit.apache.org/oak/docs/query/oak-run-indexing.html was: oak-run indexing for SegmentNodeStore currently require following steps while performing indexing against a repository which is in use [1] # Create checkpoint via MBean and pass it as part of cli args # Perform actual indexing with read only access to repo # Import the index via MBean operation As per current documented steps #1 and #3 are manual. This can potentially be simplified by directly using JMX operation from within oak-run as currently for accessing SegmentNodeStore oak-run needs to run on same host as actual application *JMX Access* JMX access can be done via following ways # Application using Oak has JMX remote ## Enabled and same info provided as cli args ## Not enabled - In such a case we can rely on ### pid and [local connection|https://stackoverflow.com/questions/13252914/how-to-connect-to-a-local-jmx-server-by-knowing-the-process-id] ### Or query all running java prcess jmx and check if SegmentNodeStore repo path is same as one provided in cli # Application using OAk *Proposed Approach* # Establish the JMX connection # Create checkpoint using the JMX connection programatically # Perform indexing with read only access # Import the index via JMX access With this indexing support for SegmentNodeStore would be at par with DocumentNodeStore in terms of ease of use [1] https://jackrabbit.apache.org/oak/docs/query/oak-run-indexing.html > Use JMX mode to reindex on SegmentNodeStore without requiring manual steps > -------------------------------------------------------------------------- > > Key: OAK-7116 > URL: https://issues.apache.org/jira/browse/OAK-7116 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: run > Reporter: Chetan Mehrotra > Assignee: Chetan Mehrotra > Fix For: 1.10 > > > oak-run indexing for SegmentNodeStore currently require following steps while > performing indexing against a repository which is in use [1] > # Create checkpoint via MBean and pass it as part of cli args > # Perform actual indexing with read only access to repo > # Import the index via MBean operation > As per current documented steps #1 and #3 are manual. This can potentially be > simplified by directly using JMX operation from within oak-run as currently > for accessing SegmentNodeStore oak-run needs to run on same host as actual > application > *JMX Access* > JMX access can be done via following ways > # Application using Oak has JMX remote > ## Enabled and same info provided as cli args > ## Not enabled - In such a case we can rely on > ### pid and [local > connection|https://stackoverflow.com/questions/13252914/how-to-connect-to-a-local-jmx-server-by-knowing-the-process-id] > or [attach|https://github.com/nickman/jmxlocal] > ### Or query all running java prcess jmx and check if SegmentNodeStore repo > path is same as one provided in cli > # Application using OAk > *Proposed Approach* > # Establish the JMX connection > # Create checkpoint using the JMX connection programatically > # Perform indexing with read only access > # Import the index via JMX access > With this indexing support for SegmentNodeStore would be at par with > DocumentNodeStore in terms of ease of use > [1] https://jackrabbit.apache.org/oak/docs/query/oak-run-indexing.html -- This message was sent by Atlassian JIRA (v6.4.14#64029)