• Developer

    I had some projects import failed with "import_error": "Error importing repository into <project_name> - key not found: nil" during congregate migration from SM (14.7) to SaaS.

    [ERROR]|importexport.get_import_id_from_response:531| Project xxx import to xxx failed, with import status (re-importing):
    {
        "correlation_id": "c42ff5397b69266ec984183c5527a048",
        "created_at": "2023-01-18T15:27:44.432Z",
        "description": null,
        "failed_relations": [],
        "id": 42702042,
        "import_error": "Error importing repository  into xxx - key not found: nil",
        "import_status": "failed",
        "import_type": "gitlab_project",
        "name": "lms-kronos",
        "name_with_namespace": "xxxxx",
        "path": "lms-kronos",
        "path_with_namespace": "xxxx",
        "stats": null
    }

    https://log.gprd.gitlab.net/goto/472d94d0-9754-11ed-85ed-e7557b0a598c

    Backtrace

    app/models/concerns/featurable.rb:70:in `access_level_from_str', 
    app/models/concerns/project_features_compatibility.rb:137:in `write_feature_attribute_string', 
    app/models/concerns/project_features_compatibility.rb:132:in `write_feature_attribute_boolean', 
    app/models/concerns/project_features_compatibility.rb:121:in `container_registry_enabled=', 
    lib/gitlab/import_export/group/relation_tree_restorer.rb:125:in `update_params!', 
    lib/gitlab/import_export/group/relation_tree_restorer.rb:34:in `block (2 levels) in restore', 
    lib/gitlab/import_export/group/relation_tree_restorer.rb:33:in `block in restore', 
    lib/gitlab/database/load_balancing/connection_proxy.rb:120:in `block in write_using_load_balancer', 
    lib/gitlab/database/load_balancing/load_balancer.rb:129:in `block in read_write', 
    lib/gitlab/database/load_balancing/load_balancer.rb:207:in `retry_with_backoff', 
    lib/gitlab/database/load_balancing/load_balancer.rb:118:in `read_write', 
    lib/gitlab/database/load_balancing/connection_proxy.rb:119:in `write_using_load_balancer', 
    lib/gitlab/database/load_balancing/connection_proxy.rb:89:in `method_missing', 
    lib/gitlab/database.rb:205:in `block (3 levels) in all_uncached', 
    lib/gitlab/database/load_balancing/connection_proxy.rb:120:in `block in write_using_load_balancer', 
    lib/gitlab/database/load_balancing/load_balancer.rb:129:in `block in read_write', 
    lib/gitlab/database/load_balancing/load_balancer.rb:207:in `retry_with_backoff', 
    lib/gitlab/database/load_balancing/load_balancer.rb:118:in `read_write', 
    lib/gitlab/database/load_balancing/connection_proxy.rb:119:in `write_using_load_balancer', 
    lib/gitlab/database/load_balancing/connection_proxy.rb:89:in `method_missing', 
    lib/gitlab/database.rb:205:in `block (3 levels) in all_uncached', 
    lib/gitlab/database.rb:205:in `block in all_uncached', 
    lib/gitlab/database/load_balancing/session.rb:47:in `use_primary', 
    lib/gitlab/database.rb:203:in `all_uncached', 
    lib/gitlab/import_export/group/relation_tree_restorer.rb:32:in `restore', lib/gitlab/import_export/project/tree_restorer.rb:33:in `restore', 
    lib/gitlab/import_export/importer.rb:21:in `all?', 
    lib/gitlab/import_export/importer.rb:21:in `execute', app/services/projects/import_service.rb:134:in `import_data', app/services/projects/import_service.rb:25:in `execute', app/workers/repository_import_worker.rb:27:in `perform', ee/app/workers/ee/repository_import_worker.rb:9:in `perform', lib/gitlab/database/load_balancing/sidekiq_server_middleware.rb:26:in `call', 
    lib/gitlab/sidekiq_middleware/duplicate_jobs/strategies/until_executing.rb:16:in `perform', 
    lib/gitlab/sidekiq_middleware/duplicate_jobs/duplicate_job.rb:44:in `perform', 
    lib/gitlab/sidekiq_middleware/duplicate_jobs/server.rb:8:in `call', 
    lib/gitlab/sidekiq_middleware/worker_context.rb:9:in `wrap_in_optional_context', 
    lib/gitlab/sidekiq_middleware/worker_context/server.rb:19:in `block in call', 
    lib/gitlab/application_context.rb:115:in `block in use', 
    lib/gitlab/application_context.rb:115:in `use', 
    lib/gitlab/application_context.rb:55:in `with_context', 
    lib/gitlab/sidekiq_middleware/worker_context/server.rb:17:in `call', 
    lib/gitlab/sidekiq_status/server_middleware.rb:7:in `call', 
    lib/gitlab/sidekiq_versioning/middleware.rb:9:in `call', 
    lib/gitlab/sidekiq_middleware/query_analyzer.rb:7:in `block in call', lib/gitlab/database/query_analyzer.rb:37:in `within', 
    lib/gitlab/sidekiq_middleware/query_analyzer.rb:7:in `call', 
    lib/gitlab/sidekiq_middleware/admin_mode/server.rb:14:in `call', 
    lib/gitlab/sidekiq_middleware/instrumentation_logger.rb:9:in `call', 
    lib/gitlab/sidekiq_middleware/batch_loader.rb:7:in `call', 
    lib/gitlab/sidekiq_middleware/extra_done_log_metadata.rb:7:in `call', 
    lib/gitlab/sidekiq_middleware/request_store_middleware.rb:10:in `block in call', 
    lib/gitlab/with_request_store.rb:17:in `enabling_request_store', 
    lib/gitlab/with_request_store.rb:10:in `with_request_store', 
    lib/gitlab/sidekiq_middleware/request_store_middleware.rb:9:in `call', 
    lib/gitlab/sidekiq_middleware/server_metrics.rb:76:in `block in call', 
    lib/gitlab/sidekiq_middleware/server_metrics.rb:103:in `block in instrument',
    lib/gitlab/metrics/background_transaction.rb:33:in `run', 
    lib/gitlab/sidekiq_middleware/server_metrics.rb:103:in `instrument', lib/gitlab/sidekiq_middleware/server_metrics.rb:75:in `call', 
    lib/gitlab/sidekiq_middleware/monitor.rb:10:in `block in call', 
    lib/gitlab/sidekiq_daemon/monitor.rb:46:in `within_job', 
    lib/gitlab/sidekiq_middleware/monitor.rb:9:in `call', 
    lib/gitlab/sidekiq_middleware/size_limiter/server.rb:13:in `call', 
    lib/gitlab/sidekiq_logging/structured_logger.rb:21:in `call'
    

    We found the error came form

    app/models/concerns/project_features_compatibility.rb:121:in `container_registry_enabled=', 
    lib/gitlab/import_export/group/relation_tree_restorer.rb:125:in

    The key not found: nil error comes from app/models/concerns/featurable.rb's fetch(level) code with level being nil in your case

    Here are some recommendations to upgrade to a closer version to our SaaS.

    https://docs.gitlab.com/ee/user/project/settings/import_export.html#version-history https://docs.gitlab.com/ee/user/project/settings/import_export.html#items-that-are-exported https://docs.gitlab.com/ee/update/plan_your_upgrade.html

    However the error should be resolved by Projects API to change container_registry_enabled to true for the failing projects(on their self-managed instance).

    Edited by Xinyuan Peric
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment