Don't stop if there is an error merging one org.
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/6e1f5ec5 Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/6e1f5ec5 Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/6e1f5ec5 Branch: refs/heads/1.x Commit: 6e1f5ec5bffbfa7430d147fb19ce87e3fb8b874f Parents: 8dd3891 Author: Dave Johnson <[email protected]> Authored: Tue Jan 5 09:56:57 2016 -0500 Committer: Dave Johnson <[email protected]> Committed: Tue Jan 5 09:56:57 2016 -0500 ---------------------------------------------------------------------- .../usergrid/tools/DuplicateOrgRepair.java | 63 +++++++++++++------- 1 file changed, 42 insertions(+), 21 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/usergrid/blob/6e1f5ec5/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java ---------------------------------------------------------------------- diff --git a/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java b/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java index 9c0a592..a33ca0e 100644 --- a/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java +++ b/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java @@ -333,37 +333,58 @@ public class DuplicateOrgRepair extends ToolBase { if ( !org.equals( bestOrg )) { - Set<OrgUser> orgUsers = new HashSet<OrgUser>( manager.getOrgUsers( org )); - - for ( OrgUser user : orgUsers ) { + Set<OrgUser> orgUsers = new HashSet<OrgUser>( manager.getOrgUsers( org ) ); + + for (OrgUser user : orgUsers) { if (dryRun) { - Object[] args = new Object[] { + Object[] args = new Object[]{ user.getName(), user.getId(), bestOrg.getName(), bestOrg.getId()}; - logger.info( "Would add user {}:{} to org {}:{}", args); - args = new Object[] { + logger.info( "Would add user {}:{} to org {}:{}", args ); + args = new Object[]{ user.getName(), user.getId(), org.getName(), org.getId()}; - logger.info( "Would remove user {}:{} org {}:{}", args); + logger.info( "Would remove user {}:{} org {}:{}", args ); } else { - manager.addUserToOrg( user, bestOrg ); - manager.removeUserFromOrg( user, org ); + try { + manager.addUserToOrg( user, bestOrg ); + } catch ( Exception e ) { + Object[] args = new Object[]{ + user.getName(), user.getId(), bestOrg.getName(), bestOrg.getId()}; + logger.error( "Error adding user {}:{} to org {}:{}", args ); + } + try { + manager.removeUserFromOrg( user, org ); + } catch ( Exception e ) { + Object[] args = new Object[]{ + user.getName(), user.getId(), org.getName(), org.getId()}; + logger.info( "Error removing user {}:{} org {}:{}", args ); + } } } - - Set<UUID> orgApps = new HashSet<UUID>( manager.getOrgApps( org )); - - for ( UUID appId : orgApps ) { + + Set<UUID> orgApps = new HashSet<UUID>( manager.getOrgApps( org ) ); + + for (UUID appId : orgApps) { if (dryRun) { - Object[] args = new Object[] { - appId, bestOrg.getName(), bestOrg.getId()}; - logger.info( "Would add app {} to org {}:{}", args); - args = new Object[] { - appId, org.getName(), org.getId()}; - logger.info( "Would remove app {} org {}:{}", args); + Object[] args = new Object[]{ appId, bestOrg.getName(), bestOrg.getId()}; + logger.info( "Would add app {} to org {}:{}", args ); + args = new Object[]{ appId, org.getName(), org.getId()}; + logger.info( "Would remove app {} org {}:{}", args ); } else { - manager.addAppToOrg( appId, bestOrg ); - manager.removeAppFromOrg( appId, org ); + try { + manager.addAppToOrg( appId, bestOrg ); + } catch ( Exception e ) { + Object[] args = new Object[]{ appId, bestOrg.getName(), bestOrg.getId()}; + logger.error( "Error adding app {} to org {}:{}", args ); + } + try { + manager.removeAppFromOrg( appId, org ); + } catch (Exception e ) { + Object[] args = new Object[]{ appId, org.getName(), org.getId()}; + logger.info( "Error removing app {} org {}:{}", args ); + } } } + } } }
