Content view publish fails with error PLP0000: /var/lib/pulp/published/yum/http/repos/xxx/os exists, but should be a symlink. Cannot find published directory, in Red Hat Satellite 6.

Solution Verified - Updated -

Environment

  • Red Hat Satellite 6.x

Issue

  • Content-View publish failing for some repositories with error:

    PLP0000: /var/lib/pulp/published/yum/http/repos/xxx/Library/content/dist/rhel/server/xxx/os exists, but should be a symlink.  Cannot find published directory.
    
  • Cannot publish a new version of content-view in Red Hat Satellite 6.

  • Content view promotion may also fail with the same error.

Resolution

  • Identify the affected repositories on the Red Hat Satellite:

       # hammer repository list --organization <org name>  
    
  • Using hammer command to validate content on the Red Hat Satellite:

      # hammer repository synchronize --id <ID> --validate-contents yes
    

Note:This will force sync on the repository and create the missing symlinks to the rpms on the filesystem if missing.

  • Once this completes resume publishing and promoting the content views.

  • In case the failing content view is a composite content view, regeneration of metadata of the underlying content view containing the repository which was synced earlier may be required to fix the issue. Please use the following KCS to complete this step:
    How to forcefully regenerate metadata of a content view or repository on Red Hat Satellite 6?

  • If content view promotion is failing then regenerate metadata of the already published version of that content view which you are trying to promote and then if it succeeds, try the promotion again.

For more KB articles/solutions related to Red Hat Satellite 6.x Content View Issues, please refer to the Red Hat Satellite Consolidated Troubleshooting Article for Red Hat Satellite 6.x Content View Issues

Diagnostic Steps

  • /var/log/foreman/production.log:

    [foreman-tasks/action] [E] PLP0000: /var/lib/pulp/published/yum/http/repos/xxx/Library/content/dist/rhel/server/xxx/os exists, but should be a symlink.  Cannot find published directory. (Katello::Errors::PulpError)
     | /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.0.0.163/app/lib/actions/pulp/abstract_async_task.rb:121:in `block in external_task='
     | /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.0.0.163/app/lib/actions/pulp/abstract_async_task.rb:119:in `each'
     | /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.0.0.163/app/lib/actions/pulp/abstract_async_task.rb:119:in `external_task='
     | /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.13.6/lib/dynflow/action/polling.rb:98:in `poll_external_task_with_rescue'
    | /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.13.6/lib/dynflow/action/polling.rb:21:in `run'
    /lib/concurrent/executor/ruby_thread_pool_executor.rb:322:in `block (3 levels) in create_worker'
    | /opt/theforeman/tfm/root/usr/share/gems/gems/concurrent-ruby-1.0.0/lib/concurrent/executor/ruby_thread_pool_executor.rb:305:in `loop'
    | /opt/theforeman/tfm/root/usr/share/gems/gems/concurrent-ruby-1.0.0/lib/concurrent/executor/ruby_thread_pool_executor.rb:305:in `block (2 levels) in create_worker'
    | /opt/theforeman/tfm/root/usr/share/gems/gems/concurrent-ruby-1.0.0/lib/concurrent/executor/ruby_thread_pool_executor.rb:304:in `catch'
     | /opt/theforeman/tfm/root/usr/share/gems/gems/concurrent-ruby-1.0.0/lib/concurrent/executor/ruby_thread_pool_executor.rb:304:in `block in create_worker'
     | /opt/theforeman/tfm/root/usr/share/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `call'
     | /opt/theforeman/tfm/root/usr/share/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `block in create_with_logging_context'
    

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments