Skip to content

[Bug]: TypeConflictException when running occ user:import #1024

@DerDreschner

Description

@DerDreschner

⚠️ This issue respects the following points: ⚠️

Bug description

When exporting and importing an user with the user_migration app, the import fails due to a TypeConflictException. This is unexpected as nothing changed between the export and the import and everything happens on the same instance (using https://github.com/juliusknorr/nextcloud-docker-dev).

Steps to reproduce

  1. Run docker compose up -d nextcloud after setting up the nextcloud-docker-dev environment
  2. Install the user_migration app from the store or via occ
  3. Export the data of a user with sudo -E -u www-data php occ user:export admin (for example)
  4. Try to import the generated zip file with sudo -E -u www-data php occ user:import --user admin {zipFilename}

Expected behavior

The import should run without throwing an exception.

Nextcloud Server version

master

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.2

Web server

Apache (supported)

Database engine version

MariaDB

Is this bug present after an update or on a fresh install?

Fresh Nextcloud Server install

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?

  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Configuration report

{
    "system": {
        "debug": true,
        "profiler": true,
        "apps_paths": [
            {
                "path": "\/var\/www\/html\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/apps-extra",
                "url": "\/apps-extra",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/apps-shared",
                "url": "\/apps-shared",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/apps-writable",
                "url": "\/apps-writable",
                "writable": true
            }
        ],
        "allow_local_remote_servers": true,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "1025",
        "skeletondirectory": "\/skeleton",
        "setup_create_db_user": false,
        "loglevel": 2,
        "log_query": false,
        "query_log_file": "\/shared\/log\/querylog-nextcloud.log",
        "query_log_file_requestid": "yes",
        "diagnostics.logging": false,
        "diagnostics.logging.threshold": 0,
        "log.condition": {
            "apps": [
                "diagnostics",
                "admin_audit"
            ]
        },
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "localhost",
            "nextcloud",
            "nextcloud.local",
            "192.168.21.6",
            "localhost"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "34.0.0.0",
        "overwrite.cli.url": "http:\/\/nextcloud.local",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "updater.release.channel": "git",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "lookup_server": "",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "memcache.local": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "theme": "",
        "maintenance": false,
        "app_install_overwrite": [
            "user_migration"
        ]
    }
}

List of activated Apps

Enabled:
  - calendar: 6.3.0-dev.0
  - circles: 34.0.0-dev.0
  - cloud_federation_api: 1.18.0
  - comments: 1.24.0
  - contacts: 8.4.0-dev.0
  - contactsinteraction: 1.15.0
  - dashboard: 7.14.0
  - dav: 1.37.0
  - federatedfilesharing: 1.24.0
  - federation: 1.24.0
  - files: 2.6.0
  - files_pdfviewer: 7.0.0-dev.0
  - files_reminders: 1.7.0
  - files_sharing: 1.26.0
  - files_trashbin: 1.24.0
  - files_versions: 1.27.0
  - hmr_enabler: 1.3.0-dev.0
  - lookup_server_connector: 1.22.0
  - mail: 5.7.0-beta.3
  - oauth2: 1.22.0
  - profile: 1.3.0
  - profiler: 5.0.0-dev.0
  - provisioning_api: 1.24.0
  - recommendations: 7.0.0-dev.0
  - settings: 1.17.0
  - sharebymail: 1.24.0
  - systemtags: 1.24.0
  - theming: 2.9.0
  - twofactor_backupcodes: 1.23.0
  - updatenotification: 1.24.0
  - user_migration: 9.2.0-dev.0
  - user_status: 1.14.0
  - viewer: 7.0.0-dev.0
  - weather_status: 1.14.0
  - webhook_listeners: 1.6.0
  - workflowengine: 2.16.0
Disabled:
  - admin_audit: 1.24.0
  - encryption: 2.22.0
  - files_external: 1.26.0
  - testing: 1.24.0
  - user_ldap: 1.25.0
  - user_oidc: 8.3.0

Nextcloud Signing status

Integrity checker has been disabled. Integrity cannot be verified.

Nextcloud Logs

Additional info

root@308ac01cc0d0:/var/www/html# sudo -E -u www-data php -dxdebug.mode=debug -dxdebug.client_host=host.docker.internal -dxdebug.start_with_request=yes -dxdebug.idekey=PHPSTORM occ user:import -vvv --user admin -- admin_2026-01-29_09-28-25.zip 

                                                                                                                        
 [WARNING] A user with this uid already exists!                                                                         
                                                                                                                        

 Do you really want to overwrite this user with the imported data? (yes/no) [no]:
 > yes

Importing from admin_2026-01-29_09-28-25.zip…
Importing user information from user.json…
Importing settings from settings.json…

                                                                                                                        
 [ERROR] OCP\Config\Exceptions\TypeConflictException: conflict between new type (mixed) and old type (bool) in          
         /var/www/html/lib/private/Config/UserConfig.php:1197                                                           
         Stack trace:                                                                                                   
         #0 /var/www/html/lib/private/Config/UserConfig.php(879): OC\Config\UserConfig->setTypedValue('admin',          
         'dashboard', 'firstRun', '', false, 0, Object(OCP\Config\ValueType))                                           
         nextcloud/server#1 /var/www/html/lib/private/AllConfig.php(211): OC\Config\UserConfig->setValueMixed('admin', 'dashboard',     
         'firstRun', '')                                                                                                
         nextcloud/server#2 /var/www/html/apps-extra/user_migration/lib/Service/UserMigrationService.php(319):                          
         OC\AllConfig->setUserValue('admin', 'dashboard', 'firstRun', '')                                               
         nextcloud/server#3 /var/www/html/apps-extra/user_migration/lib/Service/UserMigrationService.php(206):                          
         OCA\UserMigration\Service\UserMigrationService->importAppsSettings(Object(OC\User\User),                       
         Object(OCA\UserMigration\ImportSource), Object(Symfony\Component\Console\Style\SymfonyStyle))                  
         nextcloud/server#4 /var/www/html/apps-extra/user_migration/lib/Command/Import.php(78):                                         
         OCA\UserMigration\Service\UserMigrationService->import(Object(OCA\UserMigration\ImportSource),                 
         Object(OC\User\User), Object(Symfony\Component\Console\Style\SymfonyStyle))                                    
         nextcloud/server#5 /var/www/html/3rdparty/symfony/console/Command/Command.php(326):                                            
         OCA\UserMigration\Command\Import->execute(Object(Symfony\Component\Console\Input\ArgvInput),                   
         Object(Symfony\Component\Console\Output\ConsoleOutput))                                                        
         nextcloud/server#6 /var/www/html/3rdparty/symfony/console/Application.php(1078):                                               
         Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput),              
         Object(Symfony\Component\Console\Output\ConsoleOutput))                                                        
         nextcloud/server#7 /var/www/html/3rdparty/symfony/console/Application.php(324):                                                
         Symfony\Component\Console\Application->doRunCommand(Object(OCA\UserMigration\Command\Import),                  
         Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))     
         nextcloud/server#8 /var/www/html/3rdparty/symfony/console/Application.php(175):                                                
         Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput),                
         Object(Symfony\Component\Console\Output\ConsoleOutput))                                                        
         nextcloud/server#9 /var/www/html/lib/private/Console/Application.php(187):                                                     
         Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput),                  
         Object(Symfony\Component\Console\Output\ConsoleOutput))                                                        
         nextcloud/server#10 /var/www/html/console.php(92):                                                                             
         OC\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput))                                 
         nextcloud/server#11 /var/www/html/occ(33): require_once('/var/www/html/c...')                                                  
         nextcloud/server#12 {main}                                                                                                     
                                                                                                                        

Profiler output available at http://nextcloud.local/index.php/apps/profiler/profiler/db/6Ye7GXTGVNYd59iZ49Pr/
root@308ac01cc0d0:/var/www/html#

Metadata

Metadata

Assignees

Labels

1. to developAccepted and waiting to be taken care ofbugSomething isn't working

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions