Issue #1463
closedNode sync fails with "RuntimeError: Will not create a symlink to a non-existent source"
Description
This seems to be the cause of the following BZ's:
https://bugzilla.redhat.com/show_bug.cgi?id=1285830
https://bugzilla.redhat.com/show_bug.cgi?id=1288855
https://bugzilla.redhat.com/show_bug.cgi?id=1276911
There is a workaround; however, in at least some one case led to the data being different on the parent and child nodes.
https://access.redhat.com/solutions/2069243
The error
RuntimeError: Will not create a symlink to a non-existent source"
seems to occur because the database record of the unit is transferred but the corresponding file is not.
This has only been seen with units of type YumMetadataFile
Files
Updated by mhrivnak about 7 years ago
- Description updated (diff)
- Version set to 2.6.0
Updated by mhrivnak about 7 years ago
- Status changed from NEW to ASSIGNED
- Assignee set to jortel@redhat.com
- Priority changed from Normal to High
- Severity changed from 2. Medium to 3. High
- Triaged changed from No to Yes
Added by jortel@redhat.com about 7 years ago
Added by jortel@redhat.com about 7 years ago
Better support updated units with associated files. closes #1463.
Updated by jortel@redhat.com about 7 years ago
- Status changed from ASSIGNED to POST
Updated by jortel@redhat.com about 7 years ago
- File test-repo.tar test-repo.tar added
Steps to reproduce:
This assumes you already have a nodes setup and the child node is named: child.
- Create a small test repository on the parent node using the attached https://pulp.plan.io/attachments/download/189/test-repo.tar.
$ cd /tmp
$ untar test-repo.tar
# cd test
$ createrepo .
$ modifyrepo --mdtype=productid productid repodata
- Create a pulp repository and sync it with the test repo.
$ pulp-admin rpm repo create --repo-id=test --feed=file:///tmp/test
$ pulp-admin node enable --repo-id=test
$ pulp-admin rpm repo sync run --repo-id=test
- Bind (node) the child node to the repository.
$ pulp-admin node bind --repo-id=test --node-id=child
- Do a node sync.
$ pulp-admin node sync run --node-id=child
- Make sure the sync succeeds!
- Edit the productid and update the repository.
$ cd /tmp/test
$ echo "product: 3000-xxxxxxx" > productid
$ rm packages/vim-enhanced-7.4.475-2.fc20.x86_64.rpm
$ createrepo .
$ modifyrepo --mdtype=productid productid repodata
-
Re-sync the pulp repository with changed upstream.
$ pulp-admin rpm repo sync run --repo-id=test
-
Do another node sync. This is where the error occurred.
$ pulp-admin node sync run --node-id=child
Updated by jortel@redhat.com about 7 years ago
- Status changed from POST to MODIFIED
- % Done changed from 0 to 100
Applied in changeset pulp|2aa69b165c55a0f04447f1ab57831270b21b1e92.
Updated by jortel@redhat.com about 7 years ago
- Version changed from 2.6.0 to 2.6.5
Updated by rbarlow about 7 years ago
- Status changed from MODIFIED to 5
- Platform Release set to 2.8.0
Updated by dkliban@redhat.com almost 7 years ago
- Status changed from 6 to CLOSED - CURRENTRELEASE
Better support updated units with associated files. closes #1463.