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

ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git


The following commit(s) were added to refs/heads/master by this push:
     new 6c2f457e72 Minor refinements
6c2f457e72 is described below

commit 6c2f457e72f8a440e95efc9e0995929567249ce4
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Wed Dec 27 16:10:10 2023 +0100

    Minor refinements
---
 .../java/job/ElasticsearchReindex.java             | 63 +++++++++++---------
 .../provisioning/java/job/OpenSearchReindex.java   | 67 ++++++++++++----------
 2 files changed, 72 insertions(+), 58 deletions(-)

diff --git 
a/ext/elasticsearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/ElasticsearchReindex.java
 
b/ext/elasticsearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/ElasticsearchReindex.java
index 18b5d7e509..eba46b5a44 100644
--- 
a/ext/elasticsearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/ElasticsearchReindex.java
+++ 
b/ext/elasticsearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/ElasticsearchReindex.java
@@ -158,14 +158,29 @@ public class ElasticsearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask
             setStatus("Start rebuilding indexes");
 
             try {
-                indexManager.createAnyIndex(
-                        AuthContextUtils.getDomain(), AnyTypeKind.USER, 
userSettings(), userMapping());
+                indexManager.createRealmIndex(AuthContextUtils.getDomain(), 
realmSettings(), realmMapping());
 
-                indexManager.createAnyIndex(
-                        AuthContextUtils.getDomain(), AnyTypeKind.GROUP, 
groupSettings(), groupMapping());
+                int realms = realmDAO.count();
+                String rindex = 
ElasticsearchUtils.getRealmIndex(AuthContextUtils.getDomain());
+                setStatus("Indexing " + realms + " realms under " + rindex + 
"...");
+
+                try (BulkIngester<Void> ingester = BulkIngester.of(b -> 
b.client(client).
+                        
maxOperations(AnyDAO.DEFAULT_PAGE_SIZE).listener(ErrorLoggingBulkListener.INSTANCE)))
 {
+
+                    for (int page = 1; page <= (realms / 
AnyDAO.DEFAULT_PAGE_SIZE) + 1; page++) {
+                        for (String realm : realmDAO.findAllKeys(page, 
AnyDAO.DEFAULT_PAGE_SIZE)) {
+                            ingester.add(op -> op.index(idx -> idx.
+                                    index(rindex).
+                                    id(realm).
+                                    
document(utils.document(realmDAO.find(realm)))));
+                        }
+                    }
+                } catch (Exception e) {
+                    LOG.error("Errors while ingesting index {}", rindex, e);
+                }
 
                 indexManager.createAnyIndex(
-                        AuthContextUtils.getDomain(), AnyTypeKind.ANY_OBJECT, 
anyObjectSettings(), anyObjectMapping());
+                        AuthContextUtils.getDomain(), AnyTypeKind.USER, 
userSettings(), userMapping());
 
                 int users = userDAO.count();
                 String uindex = 
ElasticsearchUtils.getAnyIndex(AuthContextUtils.getDomain(), AnyTypeKind.USER);
@@ -186,6 +201,9 @@ public class ElasticsearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask
                     LOG.error("Errors while ingesting index {}", uindex, e);
                 }
 
+                indexManager.createAnyIndex(
+                        AuthContextUtils.getDomain(), AnyTypeKind.GROUP, 
groupSettings(), groupMapping());
+
                 int groups = groupDAO.count();
                 String gindex = 
ElasticsearchUtils.getAnyIndex(AuthContextUtils.getDomain(), AnyTypeKind.GROUP);
                 setStatus("Indexing " + groups + " groups under " + gindex + 
"...");
@@ -202,9 +220,12 @@ public class ElasticsearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask
                         }
                     }
                 } catch (Exception e) {
-                    LOG.error("Errors while ingesting index {}", uindex, e);
+                    LOG.error("Errors while ingesting index {}", gindex, e);
                 }
 
+                indexManager.createAnyIndex(
+                        AuthContextUtils.getDomain(), AnyTypeKind.ANY_OBJECT, 
anyObjectSettings(), anyObjectMapping());
+
                 int anyObjects = anyObjectDAO.count();
                 String aindex = 
ElasticsearchUtils.getAnyIndex(AuthContextUtils.getDomain(), 
AnyTypeKind.ANY_OBJECT);
                 setStatus("Indexing " + anyObjects + " any objects under " + 
aindex + "...");
@@ -221,33 +242,19 @@ public class ElasticsearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask
                         }
                     }
                 } catch (Exception e) {
-                    LOG.error("Errors while ingesting index {}", uindex, e);
-                }
-
-                indexManager.createRealmIndex(AuthContextUtils.getDomain(), 
realmSettings(), realmMapping());
-
-                int realms = realmDAO.count();
-                String rindex = 
ElasticsearchUtils.getRealmIndex(AuthContextUtils.getDomain());
-                setStatus("Indexing " + realms + " realms under " + rindex + 
"...");
-
-                try (BulkIngester<Void> ingester = BulkIngester.of(b -> 
b.client(client).
-                        
maxOperations(AnyDAO.DEFAULT_PAGE_SIZE).listener(ErrorLoggingBulkListener.INSTANCE)))
 {
-
-                    for (int page = 1; page <= (realms / 
AnyDAO.DEFAULT_PAGE_SIZE) + 1; page++) {
-                        for (String realm : realmDAO.findAllKeys(page, 
AnyDAO.DEFAULT_PAGE_SIZE)) {
-                            ingester.add(op -> op.index(idx -> idx.
-                                    index(rindex).
-                                    id(realm).
-                                    
document(utils.document(realmDAO.find(realm)))));
-                        }
-                    }
-                } catch (Exception e) {
-                    LOG.error("Errors while ingesting index {}", uindex, e);
+                    LOG.error("Errors while ingesting index {}", aindex, e);
                 }
 
                 indexManager.createAuditIndex(AuthContextUtils.getDomain(), 
auditSettings(), auditMapping());
 
                 setStatus("Rebuild indexes for domain " + 
AuthContextUtils.getDomain() + " successfully completed");
+
+                return "Indexes created:\n"
+                        + " " + rindex + " [" + realms + "]\n"
+                        + " " + uindex + " [" + users + "]\n"
+                        + " " + gindex + " [" + groups + "]\n"
+                        + " " + aindex + " [" + anyObjects + "]\n"
+                        + " " + 
ElasticsearchUtils.getAuditIndex(AuthContextUtils.getDomain());
             } catch (Exception e) {
                 throw new JobExecutionException("While rebuilding index for 
domain " + AuthContextUtils.getDomain(), e);
             }
diff --git 
a/ext/opensearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/OpenSearchReindex.java
 
b/ext/opensearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/OpenSearchReindex.java
index 782c8de24a..ae3d63e960 100644
--- 
a/ext/opensearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/OpenSearchReindex.java
+++ 
b/ext/opensearch/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/job/OpenSearchReindex.java
@@ -113,14 +113,33 @@ public class OpenSearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask> {
             setStatus("Start rebuilding indexes");
 
             try {
-                indexManager.createAnyIndex(
-                        AuthContextUtils.getDomain(), AnyTypeKind.USER, 
userSettings(), userMapping());
+                indexManager.createRealmIndex(AuthContextUtils.getDomain(), 
realmSettings(), realmMapping());
 
-                indexManager.createAnyIndex(
-                        AuthContextUtils.getDomain(), AnyTypeKind.GROUP, 
groupSettings(), groupMapping());
+                int realms = realmDAO.count();
+                String rindex = 
OpenSearchUtils.getRealmIndex(AuthContextUtils.getDomain());
+                setStatus("Indexing " + realms + " realms under " + rindex + 
"...");
+                for (int page = 1; page <= (realms / AnyDAO.DEFAULT_PAGE_SIZE) 
+ 1; page++) {
+                    BulkRequest.Builder bulkRequest = new 
BulkRequest.Builder();
+
+                    for (String realm : realmDAO.findAllKeys(page, 
AnyDAO.DEFAULT_PAGE_SIZE)) {
+                        bulkRequest.operations(op -> op.index(idx -> idx.
+                                index(rindex).
+                                id(realm).
+                                
document(utils.document(realmDAO.find(realm)))));
+                    }
+
+                    try {
+                        BulkResponse response = 
client.bulk(bulkRequest.build());
+                        LOG.debug("Index successfully created for {} [{}/{}]: 
{}",
+                                rindex, page, AnyDAO.DEFAULT_PAGE_SIZE, 
response);
+                    } catch (Exception e) {
+                        LOG.error("Could not create index for {} [{}/{}]: {}",
+                                rindex, page, AnyDAO.DEFAULT_PAGE_SIZE, e);
+                    }
+                }
 
                 indexManager.createAnyIndex(
-                        AuthContextUtils.getDomain(), AnyTypeKind.ANY_OBJECT, 
anyObjectSettings(), anyObjectMapping());
+                        AuthContextUtils.getDomain(), AnyTypeKind.USER, 
userSettings(), userMapping());
 
                 int users = userDAO.count();
                 String uindex = 
OpenSearchUtils.getAnyIndex(AuthContextUtils.getDomain(), AnyTypeKind.USER);
@@ -145,6 +164,9 @@ public class OpenSearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask> {
                     }
                 }
 
+                indexManager.createAnyIndex(
+                        AuthContextUtils.getDomain(), AnyTypeKind.GROUP, 
groupSettings(), groupMapping());
+
                 int groups = groupDAO.count();
                 String gindex = 
OpenSearchUtils.getAnyIndex(AuthContextUtils.getDomain(), AnyTypeKind.GROUP);
                 setStatus("Indexing " + groups + " groups under " + gindex + 
"...");
@@ -168,6 +190,9 @@ public class OpenSearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask> {
                     }
                 }
 
+                indexManager.createAnyIndex(
+                        AuthContextUtils.getDomain(), AnyTypeKind.ANY_OBJECT, 
anyObjectSettings(), anyObjectMapping());
+
                 int anyObjects = anyObjectDAO.count();
                 String aindex = 
OpenSearchUtils.getAnyIndex(AuthContextUtils.getDomain(), 
AnyTypeKind.ANY_OBJECT);
                 setStatus("Indexing " + anyObjects + " any objects under " + 
aindex + "...");
@@ -191,34 +216,16 @@ public class OpenSearchReindex extends 
AbstractSchedTaskJobDelegate<SchedTask> {
                     }
                 }
 
-                indexManager.createRealmIndex(AuthContextUtils.getDomain(), 
realmSettings(), realmMapping());
-
-                int realms = realmDAO.count();
-                String rindex = 
OpenSearchUtils.getRealmIndex(AuthContextUtils.getDomain());
-                setStatus("Indexing " + realms + " realms under " + rindex + 
"...");
-                for (int page = 1; page <= (realms / AnyDAO.DEFAULT_PAGE_SIZE) 
+ 1; page++) {
-                    BulkRequest.Builder bulkRequest = new 
BulkRequest.Builder();
-
-                    for (String realm : realmDAO.findAllKeys(page, 
AnyDAO.DEFAULT_PAGE_SIZE)) {
-                        bulkRequest.operations(op -> op.index(idx -> idx.
-                                index(rindex).
-                                id(realm).
-                                
document(utils.document(realmDAO.find(realm)))));
-                    }
-
-                    try {
-                        BulkResponse response = 
client.bulk(bulkRequest.build());
-                        LOG.debug("Index successfully created for {} [{}/{}]: 
{}",
-                                rindex, page, AnyDAO.DEFAULT_PAGE_SIZE, 
response);
-                    } catch (Exception e) {
-                        LOG.error("Could not create index for {} [{}/{}]: {}",
-                                rindex, page, AnyDAO.DEFAULT_PAGE_SIZE, e);
-                    }
-                }
-
                 indexManager.createAuditIndex(AuthContextUtils.getDomain(), 
auditSettings(), auditMapping());
 
                 setStatus("Rebuild indexes for domain " + 
AuthContextUtils.getDomain() + " successfully completed");
+
+                return "Indexes created:\n"
+                        + " " + rindex + " [" + realms + "]\n"
+                        + " " + uindex + " [" + users + "]\n"
+                        + " " + gindex + " [" + groups + "]\n"
+                        + " " + aindex + " [" + anyObjects + "]\n"
+                        + " " + 
OpenSearchUtils.getAuditIndex(AuthContextUtils.getDomain());
             } catch (Exception e) {
                 throw new JobExecutionException("While rebuilding index for 
domain " + AuthContextUtils.getDomain(), e);
             }

Reply via email to