Bug 1365312
| Summary: | 255 character length too short for content view names | |||
|---|---|---|---|---|
| Product: | Red Hat Satellite | Reporter: | Taft Sanders <tasander> | |
| Component: | Content Views | Assignee: | Justin Sherrill <jsherril> | |
| Status: | CLOSED ERRATA | QA Contact: | ||
| Severity: | medium | Docs Contact: | ||
| Priority: | medium | |||
| Version: | 6.1.9 | CC: | bbuckingham, bkearney, egolov, jalberts, jcallaha, jeff_m_johnson, jotodd, ktordeur, mhrivnak, mmithaiw, oshtaier, pmoravec, shisingh, vijsingh | |
| Target Milestone: | Unspecified | Keywords: | Triaged | |
| Target Release: | Unused | |||
| Hardware: | x86_64 | |||
| OS: | Linux | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1581628 (view as bug list) | Environment: | ||
| Last Closed: | 2018-02-21 16:54:37 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1581628 | |||
|
Description
Taft Sanders
2016-08-08 21:53:42 UTC
I am able to reproduce on the 2.11 branch. I used a 260-character string, and I saw the below traceback in the log on publish. It appears that the filesystem (ext4 in my case) will not allow a directory name that long. According to documentation, XFS has the same limitation of 255 characters. Since this string is used to compose a URL where content is served, and that URL maps to a directory on a filesystem, can katello just limit the length of the repo ID it generates? Please NEEDSINFO me if you need additional pulp feedback. Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) Exception caught from plugin during publish for repo [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) Traceback (most recent call last): Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/server/controllers/repository.py", line 1234, in _do_publish Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) publish_report = publish_repo(transfer_repo, conduit, call_config) Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/server/async/tasks.py", line 673, in wrap_f Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) return f(*args, **kwargs) Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp_rpm/plugins/pulp_rpm/plugins/distributors/yum/distributor.py", line 174, in publish_repo Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) return self._publisher.process_lifecycle() Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/plugins/util/publish_step.py", line 565, in process_lifecycle Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) super(PluginStep, self).process_lifecycle() Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/plugins/util/publish_step.py", line 162, in process_lifecycle Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) step.process() Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/plugins/util/publish_step.py", line 252, in process Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) self._process_block() Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/plugins/util/publish_step.py", line 296, in _process_block Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) self.process_main() Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/plugins/util/publish_step.py", line 899, in process_main Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) copytree(self.source_dir, timestamp_master_dir, symlinks=True) Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/home/vagrant/devel/pulp/server/pulp/server/util.py", line 245, in copytree Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) os.makedirs(dst) Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/usr/lib64/python2.7/os.py", line 150, in makedirs Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) makedirs(head, mode) Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) File "/usr/lib64/python2.7/os.py", line 157, in makedirs Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) mkdir(name, mode) Sep 08 16:09:02 dev pulp[4659]: pulp.server.controllers.repository:ERROR: (4659-15744) OSError: [Errno 36] File name too long: '/var/lib/pulp/published/yum/master/yum_distributor/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' If pulp were to make an improvement in this area, it would only be to fail more gracefully. Katello would still need to supply a repo_id that is <= 255 characters long, so there's nothing that a user could do to recover from that situation. As such, I'm changing the component to Content Management. Let me know if there is a pulp change that would be helpful for this case. I did consider that pulp could try to prevent creation of a repo where the repo_id is > 255 characters long. Unfortunately, the problem is more complicated, because different distributors use the repo_id in different ways when it comes to the filesystem. Not all will necessarily use it in a file path, so it is difficult to do validation at repo creation time. Created redmine issue http://projects.theforeman.org/issues/17949 from this bug Upstream bug assigned to jsherril Moving this bug to POST for triage into Satellite 6 since the upstream issue http://projects.theforeman.org/issues/17949 has been resolved. *** Bug 1427145 has been marked as a duplicate of this bug. *** Verified both on 6.2 and 6.3. Functionality works as intended and content views that has long names can be published successfully Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA.
> >
> > For information on the advisory, and where to find the updated files, follow the link below.
> >
> > If the solution does not work for you, open a new bug report.
> >
> > https://access.redhat.com/errata/RHSA-2018:0336
|