Migrating Jira from Server to Cloud fails if no directory is present

XMLWordPrintable

    • 6
    • Severity 3 - Minor

      Summary

      Migrating Jira from Server to Cloud fails if no directory is present

      Expected Results

      Migration is completed successfully without errors

      Actual Results

      Access to logs are only available for Cloud Support Engineers, please contact support before applying the workaround:

      Migration fails with the following errors showing in logs

      2018-04-26 11:19:24.228	ERROR	com.atlassian.jira.internal.rest.AsyncCloudTaskRunner.privacy-safe	Non recoverable error occurred during cloudImport.	Import task failed: [Error importing data: com.atlassian.jira.log.clean.PrivacySafeException: Privacy-safe boxing of a java.lang.NullPointerException]	cloud.atlassian.provisioning.exception.PermanentProvisioningFailureException: Import task failed: [Error importing data: com.atlassian.jira.log.clean.PrivacySafeException: Privacy-safe boxing of a java.lang.NullPointerException] at com.atlassian.jira.internal.rest.CloudBackupManager.startImport(CloudBackupManager.java:94) at com.atlassian.jira.internal.rest.ImportResource.lambda$importArchive$1(ImportResource.java:75) at com.atlassian.jira.internal.rest.AbstractCloudProvisionerResource.lambda$withTenantedWorkContext$1(AbstractCloudProvisionerResource.java:95) at com.atlassian.jira.internal.filter.InternalResource.withWorkContext(InternalResource.java:104) at com.atlassian.jira.internal.rest.AbstractCloudProvisionerResource.withTenantedWorkContext(AbstractCloudProvisionerResource.java:80) at com.atlassian.jira.internal.rest.ImportResource.importArchive(ImportResource.java:74) at com.atlassian.jira.internal.rest.ImportResource.lambda$post$0(ImportResource.java:65) at com.atlassian.jira.internal.rest.AsyncCloudTaskRunner$AsyncCloudProvisionerHelper.wrapTask(AsyncCloudTaskRunner.java:147) at com.atlassian.jira.internal.rest.AsyncCloudTaskRunner$AsyncCloudProvisionerHelper.lambda$runAsync$0(AsyncCloudTaskRunner.java:127) at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590) at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1582) at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
      
      2018-04-26 11:19:24.195	ERROR	com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.privacy-safe	Error occurred while importing users	Privacy-safe boxing of a java.lang.NullPointerException	com.atlassian.jira.log.clean.PrivacySafeException: Privacy-safe boxing of a java.lang.NullPointerException at okhttp3.HttpUrl$Builder.addEncodedPathSegment(HttpUrl.java:1068) at com.atlassian.jira.crowd.embedded.JiraCustomerAccountDirectoryServiceClient.getDirectoryBasedUrlBuilder(JiraCustomerAccountDirectoryServiceClient.java:160) at com.atlassian.jira.crowd.embedded.JiraCustomerAccountDirectoryServiceClient.getUsersUpdatedSince(JiraCustomerAccountDirectoryServiceClient.java:98) at com.atlassian.crowd.directory.customeraccount.CustomerAccountRemoteDirectoryImpl.getAllUsersFromCustomerAccountDirectory(CustomerAccountRemoteDirectoryImpl.java:87) at com.atlassian.crowd.directory.customeraccount.CustomerAccountRemoteDirectoryImpl.getUsersUpdatedSince(CustomerAccountRemoteDirectoryImpl.java:78) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseSinglePageOfUser(CustomerAccountCacheRefresherImpl.java:150) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseAllPages(CustomerAccountCacheRefresherImpl.java:118) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseAllUsersFromUpdatedAt(CustomerAccountCacheRefresherImpl.java:109) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseUsers(CustomerAccountCacheRefresherImpl.java:82) at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCustomerAccountDirectory(DbCachingRemoteDirectory.java:2058) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.doCustomerAccountDirectorySynchronisation(DirectorySynchroniserImpl.java:153) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchroniseCustomerAccountDirectory(DirectorySynchroniserImpl.java:133) at com.atlassian.crowd.manager.directory.DirectoryManagerGeneric.synchroniseCustomerAccountDirectory(DirectoryManagerGeneric.java:242) at com.atlassian.crowd.embedded.core.CrowdDirectoryServiceImpl.synchroniseCustomerAccountDirectory(CrowdDirectoryServiceImpl.java:181) at com.atlassian.jira.provisioning.IdpDirectoryProvisioner.synchroniseCustomerAccountDirectory(IdpDirectoryProvisioner.java:83) at com.atlassian.jira.bc.dataimport.identity.IdentityImportHelper.synchroniseCustomerAccountDirectory(IdentityImportHelper.java:146) at com.atlassian.jira.bc.dataimport.identity.IdentityImportHelper.performMigration(IdentityImportHelper.java:131) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.performTasksOnImportDb(CloudImportTaskRunner.java:333) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.performTasksOnImportDb(CloudImportTaskRunner.java:358) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.lambda$null$1(CloudImportTaskRunner.java:167) at com.atlassian.connpool.impl.AbstractConnectionPoolProvider.withPrivatePool(AbstractConnectionPoolProvider.java:133) at com.atlassian.jira.connpool.JiraViburConnectionPoolProvider.withPrivatePool(JiraViburConnectionPoolProvider.java:94) at com.atlassian.jira.bc.dataimport.AbstractBackupTaskRunner.lambda$null$0(AbstractBackupTaskRunner.java:63) at java.util.Optional.map(Optional.java:215) at com.atlassian.jira.bc.dataimport.AbstractBackupTaskRunner.lambda$runWithSeparateContextAsync$1(AbstractBackupTaskRunner.java:62) at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
      
      2018-04-26 11:19:24.195	ERROR	com.atlassian.jira.bc.dataimport.CloudImportTaskRunner	Error occurred while importing users	encodedPathSegment == null	java.lang.NullPointerException: encodedPathSegment == null at okhttp3.HttpUrl$Builder.addEncodedPathSegment(HttpUrl.java:1068) at com.atlassian.jira.crowd.embedded.JiraCustomerAccountDirectoryServiceClient.getDirectoryBasedUrlBuilder(JiraCustomerAccountDirectoryServiceClient.java:160) at com.atlassian.jira.crowd.embedded.JiraCustomerAccountDirectoryServiceClient.getUsersUpdatedSince(JiraCustomerAccountDirectoryServiceClient.java:98) at com.atlassian.crowd.directory.customeraccount.CustomerAccountRemoteDirectoryImpl.getAllUsersFromCustomerAccountDirectory(CustomerAccountRemoteDirectoryImpl.java:87) at com.atlassian.crowd.directory.customeraccount.CustomerAccountRemoteDirectoryImpl.getUsersUpdatedSince(CustomerAccountRemoteDirectoryImpl.java:78) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseSinglePageOfUser(CustomerAccountCacheRefresherImpl.java:150) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseAllPages(CustomerAccountCacheRefresherImpl.java:118) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseAllUsersFromUpdatedAt(CustomerAccountCacheRefresherImpl.java:109) at com.atlassian.crowd.directory.customeraccount.sync.CustomerAccountCacheRefresherImpl.synchroniseUsers(CustomerAccountCacheRefresherImpl.java:82) at com.atlassian.crowd.directory.DbCachingRemoteDirectory.synchroniseCustomerAccountDirectory(DbCachingRemoteDirectory.java:2058) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.doCustomerAccountDirectorySynchronisation(DirectorySynchroniserImpl.java:153) at com.atlassian.crowd.manager.directory.DirectorySynchroniserImpl.synchroniseCustomerAccountDirectory(DirectorySynchroniserImpl.java:133) at com.atlassian.crowd.manager.directory.DirectoryManagerGeneric.synchroniseCustomerAccountDirectory(DirectoryManagerGeneric.java:242) at com.atlassian.crowd.embedded.core.CrowdDirectoryServiceImpl.synchroniseCustomerAccountDirectory(CrowdDirectoryServiceImpl.java:181) at com.atlassian.jira.provisioning.IdpDirectoryProvisioner.synchroniseCustomerAccountDirectory(IdpDirectoryProvisioner.java:83) at com.atlassian.jira.bc.dataimport.identity.IdentityImportHelper.synchroniseCustomerAccountDirectory(IdentityImportHelper.java:146) at com.atlassian.jira.bc.dataimport.identity.IdentityImportHelper.performMigration(IdentityImportHelper.java:131) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.performTasksOnImportDb(CloudImportTaskRunner.java:333) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.performTasksOnImportDb(CloudImportTaskRunner.java:358) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.lambda$null$1(CloudImportTaskRunner.java:167) at com.atlassian.connpool.impl.AbstractConnectionPoolProvider.withPrivatePool(AbstractConnectionPoolProvider.java:133) at com.atlassian.jira.connpool.JiraViburConnectionPoolProvider.withPrivatePool(JiraViburConnectionPoolProvider.java:94) at com.atlassian.jira.bc.dataimport.AbstractBackupTaskRunner.lambda$null$0(AbstractBackupTaskRunner.java:63) at java.util.Optional.map(Optional.java:215) at com.atlassian.jira.bc.dataimport.AbstractBackupTaskRunner.lambda$runWithSeparateContextAsync$1(AbstractBackupTaskRunner.java:62) at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
      

      Workaround

      Activate Jira Service Desk application before the import and deactivate it after the import completed.

            Assignee:
            Anatoly Shuvalov (Inactive)
            Reporter:
            Houston B.
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: