This is an automated email from the ASF dual-hosted git repository.

sarath pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/atlas.git

commit dbc1865a78138318a0753d4e7d52b5591796f4ff
Author: chaitali borole <[email protected]>
AuthorDate: Tue Jun 16 12:57:14 2020 +0530

    ATLAS-3833 : Packaging for atlas index repair tool
    
    Signed-off-by: nixonrodrigues <[email protected]>
    (cherry picked from commit e691a32c2d3888c99757e6aa31694ec8d14c2d48)
---
 distro/pom.xml                                     |  1 +
 .../main/assemblies/atlas-repair-index-package.xml | 58 ++++++++++++++++++++++
 pom.xml                                            |  1 +
 tools/atlas-index-repair/README                    | 28 +++++++++++
 4 files changed, 88 insertions(+)

diff --git a/distro/pom.xml b/distro/pom.xml
index c0666b8..0a9ec9e 100644
--- a/distro/pom.xml
+++ b/distro/pom.xml
@@ -136,6 +136,7 @@ atlas.graph.index.search.solr.wait-searcher=true
                                         
<descriptor>src/main/assemblies/atlas-server-package.xml</descriptor>
                                         
<descriptor>src/main/assemblies/standalone-package.xml</descriptor>
                                         
<descriptor>src/main/assemblies/src-package.xml</descriptor>
+                                        
<descriptor>src/main/assemblies/atlas-repair-index-package.xml</descriptor>
                                         
<!--<descriptor>src/main/assemblies/migration-exporter.xml</descriptor>-->
                                         
<descriptor>src/main/assemblies/classification-updater.xml</descriptor>
                                     </descriptors>
diff --git a/distro/src/main/assemblies/atlas-repair-index-package.xml 
b/distro/src/main/assemblies/atlas-repair-index-package.xml
new file mode 100644
index 0000000..7d92bb2
--- /dev/null
+++ b/distro/src/main/assemblies/atlas-repair-index-package.xml
@@ -0,0 +1,58 @@
+<!--
+**
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*
+-->
+<assembly>
+    <id>atlas-index-repair</id>
+    <formats>
+        <format>dir</format>
+        <format>zip</format>
+    </formats>
+
+    <baseDirectory>atlas-index-repair</baseDirectory>
+
+    <fileSets>
+        <fileSet>
+            <includes>
+                <include>README*</include>
+            </includes>
+        </fileSet>
+        <fileSet>
+            
<directory>../tools/atlas-index-repair/src/main/resources</directory>
+            <outputDirectory>.</outputDirectory>
+            <includes>
+                <include>atlas-log4j.xml</include>
+                <include>repair_index.py</include>
+            </includes>
+            <fileMode>0755</fileMode>
+            <directoryMode>0755</directoryMode>
+        </fileSet>
+        <fileSet>
+            <directory>../tools/atlas-index-repair/target</directory>
+            <outputDirectory>.</outputDirectory>
+            <includes>
+                <include>atlas-index-repair-*.jar</include>
+            </includes>
+            <excludes>
+                <exclude>*-test-sources.jar</exclude>
+                <exclude>*-sources.jar</exclude>
+            </excludes>
+        </fileSet>
+    </fileSets>
+</assembly>
diff --git a/pom.xml b/pom.xml
index 2759207..8456d4b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -800,6 +800,7 @@
         <module>addons/hbase-testing-util</module>
         <module>addons/kafka-bridge</module>
         <module>tools/classification-updater</module>
+        <module>tools/atlas-index-repair</module>
         <module>addons/impala-hook-api</module>
         <module>addons/impala-bridge-shim</module>
         <module>addons/impala-bridge</module>
diff --git a/tools/atlas-index-repair/README b/tools/atlas-index-repair/README
new file mode 100644
index 0000000..8c79c3c
--- /dev/null
+++ b/tools/atlas-index-repair/README
@@ -0,0 +1,28 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+Introduction
+  This feature takes care while in some cases it is possible that during 
entity creation, the entity is stored in the data store, but the corresponding 
indexes are not created in Solr.
+  Since Atlas relies heavily on Solr in the operation of its Basic Search, 
this will result in entity not being returned by a search.
+
+Steps to execute repair index in Atlas :
+  If the user needs to restore all the indexes, this can be accomplished by 
executing the repair-index.py with no command-line parameters.
+  To perform selective restore for an Atlas entity, specify the GUID of that 
entity:
+  eg : atlas-index-repair/repair_index.py [-g <guid>]
+  For kerberos as authentication mode :
+  use: kinit -kt <keytab directory>/atlas.keytab atlas/fqdn@DOMAIN.
+  Add "-Djava.security.auth.login.config=/<atlas server 
directory>/conf/atlas_jaas.conf" to DEFAULT_JVM_OPTS in repair_index.py.

Reply via email to