Bug 623911
Summary: | pulp repo sync error if repo feed = None | ||
---|---|---|---|
Product: | [Retired] Pulp | Reporter: | Shveta <ssachdev> |
Component: | z_other | Assignee: | Pradeep Kilambi <pkilambi> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | unspecified | CC: | pthomas, tsanders |
Target Milestone: | --- | Keywords: | Triaged |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-08-16 14:02:28 UTC | Type: | --- |
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: | 647488 |
Description
Shveta
2010-08-13 06:39:14 UTC
[root@shveta noarch]# pulp-admin -u admin -p admin repo create --id=newrepo Successfully created Repo [ newrepo ] Suggestion : we should not be able to create repo without feed Nop, Both are supported. A feedless repo is to support custom content and the error you're seeing has nothing to do with whether its feed or feedless. Again, Please attach server side logs when you open bugs like this. There is no way for us to tell what the issue is from this bug report. Error when id was was not existing [root@preethi ~]# pulp-admin -u admin -p admin repo sync --id=13"Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 50, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/role_check.py\", line 102, in check_roles\n ret=f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/repositories.py\", line 425, in GET\n return self.ok(task_info)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 129, in ok\n return self._output(data)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 119, in _output\n return json.dumps(data, default=pymongo.json_util.default)\n File \"/usr/lib64/python2.6/json/__init__.py\", line 237, in dumps\n **kw).encode(obj)\n File \"/usr/lib64/python2.6/json/encoder.py\", line 367, in encode\n chunks = list(self.iterencode(o))\n File \"/usr/lib64/python2.6/json/encoder.py\", line 309, in _iterencode\n for chunk in self._iterencode_dict(o, markers):\n File \"/usr/lib64/python2.6/json/encoder.py\", line 275, in _iterencode_dict\n for chunk in self._iterencode(value, markers):\n File \"/usr/lib64/python2.6/json/encoder.py\", line 317, in _iterencode\n for chunk in self._iterencode_default(o, markers):\n File \"/usr/lib64/python2.6/json/encoder.py\", line 323, in _iterencode_default\n newobj = self.default(o)\n File \"/usr/lib64/python2.6/site-packages/pymongo/json_util.py\", line 92, in default\n raise TypeError(\"%r is not JSON serializable\" % obj)\nTypeError: PulpException() is not JSON serializable\n" logs from pulptools.log [root@preethi ~]# tail -f /var/log/pulp/pulptools.log self.validateResponse(response) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 95, in validateResponse raise RestlibException(response.status, response.read()) RestlibException: 409: "Sync already in process for repo [rhel-i386-server-5]" 2010-08-16 15:53:43,401 [WARNING][Thread-1] connect() @ driver.py:492 - trying: localhost:5672 2010-08-16 15:53:43,402 [WARNING][Thread-1] close_engine() @ driver.py:432 - recoverable error[attempt 73]: [Errno 111] Connection refused 2010-08-16 15:53:43,402 [WARNING][Thread-1] close_engine() @ driver.py:434 - sleeping 120 seconds 2010-08-16 15:55:43,502 [WARNING][Thread-1] connect() @ driver.py:492 - trying: localhost:5672 2010-08-16 15:55:43,506 [WARNING][Thread-1] close_engine() @ driver.py:432 - recoverable error[attempt 74]: [Errno 111] Connection refused 2010-08-16 15:55:43,506 [WARNING][Thread-1] close_engine() @ driver.py:434 - sleeping 120 seconds 2010-08-16 15:56:52,870 [INFO][MainThread] setUp() @ connection.py:135 - Connection Established for cli: Host: localhost, Port: 8811, handler: 2010-08-16 15:56:52,871 [INFO][MainThread] setUp() @ connection.py:137 - Using cert_file: None and key_file: None 2010-08-16 15:56:58,053 [INFO][MainThread] _sync() @ core_repo.py:187 - REST Error. Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/pulptools/core/core_repo.py", line 177, in _sync status = self.pconn.sync_status(task_object['status_path']) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 237, in sync_status return self.conn.request_get(status_path) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 99, in request_get return self._request("GET", method) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 87, in _request self.validateResponse(response) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 95, in validateResponse raise RestlibException(response.status, response.read()) RestlibException: 500: "Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 50, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/role_check.py\", line 102, in check_roles\n ret=f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/repositories.py\", line 425, in GET\n return self.ok(task_info)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 129, in ok\n return self._output(data)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 119, in _output\n return json.dumps(data, default=pymongo.json_util.default)\n File \"/usr/lib64/python2.6/json/__init__.py\", line 237, in dumps\n **kw).encode(obj)\n File \"/usr/lib64/python2.6/json/encoder.py\", line 367, in encode\n chunks = list(self.iterencode(o))\n File \"/usr/lib64/python2.6/json/encoder.py\", line 309, in _iterencode\n for chunk in self._iterencode_dict(o, markers):\n File \"/usr/lib64/python2.6/json/encoder.py\", line 275, in _iterencode_dict\n for chunk in self._iterencode(value, markers):\n File \"/usr/lib64/python2.6/json/encoder.py\", line 317, in _iterencode\n for chunk in self._iterencode_default(o, markers):\n File \"/usr/lib64/python2.6/json/encoder.py\", line 323, in _iterencode_default\n newobj = self.default(o)\n File \"/usr/lib64/python2.6/site-packages/pymongo/json_util.py\", line 92, in default\n raise TypeError(\"%r is not JSON serializable\" % obj)\nTypeError: PulpException() is not JSON serializable\n" 2010-08-16 15:57:43,606 [WARNING][Thread-1] connect() @ driver.py:492 - trying: localhost:5672 2010-08-16 15:57:43,607 [WARNING][Thread-1] close_engine() @ driver.py:432 - recoverable error[attempt 75]: [Errno 111] Connection refused 2010-08-16 15:57:43,607 [WARNING][Thread-1] close_engine() @ driver.py:434 - sleeping 120 seconds f13 doesnt exist ========================== [root@fedora12g2 ~]# pulp-admin -u admin -p admin repo sync --id=f13 "Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 51, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/role_check.py\", line 102, in check_roles\n ret=f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/repositories.py\", line 241, in sync\n task_info = self.start_task(api.sync, [id], timeout=timeout, unique=True)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 261, in start_task\n task_info = self._task_to_dict(task)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in _task_to_dict\n return dict((f, getattr(task, f)) for f in fields)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in <genexpr>\n return dict((f, getattr(task, f)) for f in fields)\nAttributeError: 'Task' object has no attribute 'next_time'\n" vi /var/log/pulp/pulptools.log ion Established for cli: Host: localhost, Port: 8811, handler: 2010-08-18 11:51:17,461 [INFO][MainThread] setUp() @ connection.py:137 - Using cert_file: None and key_file: None 2010-08-18 11:51:21,727 [INFO][MainThread] _sync() @ core_repo.py:187 - REST Error. Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/pulptools/core/core_repo.py", line 173, in _sync task_object = self.pconn.sync(self.options.id) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 186, in sync return self.conn.request_post(method) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 102, in request_post return self._request("POST", method, params) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 87, in _request self.validateResponse(response) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 95, in validateResponse raise RestlibException(response.status, response.read()) RestlibException: 500: "Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 51, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/role_check.py\", line 102, in check_roles\n ret=f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/repositories.py\", line 241, in sync\n task_info = self.start_task(api.sync, [id], timeout=timeout, unique=True)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 261, in start_task\n task_info = self._task_to_dict(task)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in _task_to_dict\n return dict((f, getattr(task, f)) for f in fields)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in <genexpr>\n return dict((f, getattr(task, f)) for f in fields)\nAttributeError: 'Task' object has no attribute 'next_time'\n" [root@fedora12g2 ~]# pulp-admin repo create --id=TAKE3rhel-i386-server-5 -u admin -p admin --name=rhel-i386-server-5 --arch=i386 --feed=rhn:satellite.rhn.redhat.com/rhel-i386-server-5 Successfully created Repo [ TAKE3rhel-i386-server-5 ] [root@fedora12g2 ~]# pulp-admin -u admin -p admin repo sync --id=TAKE3rhel-i386-server-5 "Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 51, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/role_check.py\", line 102, in check_roles\n ret=f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/repositories.py\", line 241, in sync\n task_info = self.start_task(api.sync, [id], timeout=timeout, unique=True)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 261, in start_task\n task_info = self._task_to_dict(task)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in _task_to_dict\n return dict((f, getattr(task, f)) for f in fields)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in <genexpr>\n return dict((f, getattr(task, f)) for f in fields)\nAttributeError: 'Task' object has no attribute 'next_time'\n" ======================================================= [root@fedora12g2 ~]# tail -f /var/log/pulp/pulptools.log 2010-08-18 11:52:09,289 [WARNING][Thread-1] close_engine() @ driver.py:432 - recoverable error[attempt 62]: [Errno 111] Connection refused 2010-08-18 11:52:09,360 [WARNING][Thread-1] close_engine() @ driver.py:434 - sleeping 120 seconds 2010-08-18 11:54:09,395 [WARNING][Thread-1] connect() @ driver.py:492 - trying: localhost:5672 2010-08-18 11:54:09,471 [WARNING][Thread-1] close_engine() @ driver.py:432 - recoverable error[attempt 63]: [Errno 111] Connection refused 2010-08-18 11:54:09,579 [WARNING][Thread-1] close_engine() @ driver.py:434 - sleeping 120 seconds 2010-08-18 11:56:09,576 [WARNING][Thread-1] connect() @ driver.py:492 - trying: localhost:5672 2010-08-18 11:56:09,644 [WARNING][Thread-1] close_engine() @ driver.py:432 - recoverable error[attempt 64]: [Errno 111] Connection refused 2010-08-18 11:56:09,660 [WARNING][Thread-1] close_engine() @ driver.py:434 - sleeping 120 seconds 2010-08-18 11:57:06,034 [INFO][MainThread] setUp() @ connection.py:135 - Connection Established for cli: Host: localhost, Port: 8811, handler: 2010-08-18 11:57:06,199 [INFO][MainThread] setUp() @ connection.py:137 - Using cert_file: None and key_file: None 2010-08-18 11:57:43,463 [INFO][MainThread] setUp() @ connection.py:135 - Connection Established for cli: Host: localhost, Port: 8811, handler: 2010-08-18 11:57:43,753 [INFO][MainThread] setUp() @ connection.py:137 - Using cert_file: None and key_file: None 2010-08-18 11:57:45,765 [INFO][MainThread] _sync() @ core_repo.py:187 - REST Error. Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/pulptools/core/core_repo.py", line 173, in _sync task_object = self.pconn.sync(self.options.id) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 186, in sync return self.conn.request_post(method) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 102, in request_post return self._request("POST", method, params) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 87, in _request self.validateResponse(response) File "/usr/lib/python2.6/site-packages/pulptools/connection.py", line 95, in validateResponse raise RestlibException(response.status, response.read()) RestlibException: 500: "Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 51, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/role_check.py\", line 102, in check_roles\n ret=f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/repositories.py\", line 241, in sync\n task_info = self.start_task(api.sync, [id], timeout=timeout, unique=True)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 261, in start_task\n task_info = self._task_to_dict(task)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in _task_to_dict\n return dict((f, getattr(task, f)) for f in fields)\n File \"/usr/lib/python2.6/site-packages/pulp/webservices/controllers/base.py\", line 236, in <genexpr>\n return dict((f, getattr(task, f)) for f in fields)\nAttributeError: 'Task' object has no attribute 'next_time'\n" ============================================================= This is working. Would it possible to remove the 'u' from the message if the repo doesnot exist. eg: u'No Repo with id: test found' [root@preethi ~]# pulp-admin -u admin -p admin repo sync --id=test Sync Status:: error Error : PulpException: u'No Repo with id: test found' This appears to have regressed in the latest QA Build: [root@tsanders-x201 pulp]# rpm -qa | grep pulp pulp-common-0.0.59-1.fc13.noarch pulp-0.0.59-1.fc13.noarch pulp-client-0.0.59-1.fc13.noarch 1. Attempting to sync a non-existent repo: [root@tsanders-x201 pulp]# pulp-admin repo sync --id=doesntexist Task created with ID:: Traceback (most recent call last): File "/usr/bin/pulp-admin", line 30, in <module> pulpcli.PulpCore().main() File "/usr/lib/python2.6/site-packages/pulp/client/pulpcli.py", line 108, in main cmd.main() File "/usr/lib/python2.6/site-packages/pulp/client/core/basecore.py", line 120, in main self._do_core() File "/usr/lib/python2.6/site-packages/pulp/client/core/core_repo.py", line 122, in _do_core self._sync() File "/usr/lib/python2.6/site-packages/pulp/client/core/core_repo.py", line 189, in _sync print "Task created with ID::", task_object['id'] TypeError: 'NoneType' object is unsubscriptable 2. Attempting to sync a feedless repo: [root@tsanders-x201 pulp]# pulp-admin repo sync --id=todd "Traceback (most recent call last):\n File \"/usr/lib/python2.6/site-packages/pulp/server/webservices/controllers/base.py\", line 51, in report_error\n return method(self, *args, **kwargs)\n File \"/usr/lib/python2.6/site-packages/pulp/server/webservices/role_check.py\", line 106, in check_roles\n result = f(instance, *fargs, **kw)\n File \"/usr/lib/python2.6/site-packages/pulp/server/webservices/controllers/repositories.py\", line 242, in sync\n if repo['source']['type'] in ('yum', 'rhn'):\nTypeError: 'NoneType' object is unsubscriptable\n" Looks like this is caused due to commit: commit d56db564d996c2981b31b9b248d62bf7ee82e1a7 Author: Jason L Connor <jconnor> Date: Thu Aug 26 12:49:06 2010 -0600 implemented progress callbacks for rhn and yum repo syncs When we added progress callback support we dint take into account the fact that same method is applicable to feedless repos. I'll poke around Fixed! commit 7e5d3a54a012f2f095e9ebe91fe496db0b0ea83a Author: Pradeep Kilambi <pkilambi> Date: Tue Sep 7 09:53:44 2010 -0400 Setup callbacks only for repos with source set. A feedless repo can have a source as None With Fix: $ sudo pulp-admin repo sync --id=feedless Task created with ID:: 3bb26f66-ba87-11df-a1d2-0023ae793dbc Sync Status:: error Error : PulpException: 'This repo is not setup for sync. Please add packages using upload.' fails_qa [root@preethi ~]# rpm -qa |grep pulp pulp-0.0.61-1.fc13.noarch pulp-client-0.0.61-1.fc13.noarch pulp-common-0.0.61-1.fc13.noarch [root@preethi ~]# rpm -qa |grep grinder grinder-0.0.60-1.fc13.noarch [root@preethi ~]# pulp-admin repo sync --id=feedless Task created with ID:: Traceback (most recent call last): File "/usr/bin/pulp-admin", line 30, in <module> pulpcli.PulpCore().main() File "/usr/lib/python2.6/site-packages/pulp/client/pulpcli.py", line 108, in main cmd.main() File "/usr/lib/python2.6/site-packages/pulp/client/core/basecore.py", line 120, in main self._do_core() File "/usr/lib/python2.6/site-packages/pulp/client/core/core_repo.py", line 127, in _do_core self._sync() File "/usr/lib/python2.6/site-packages/pulp/client/core/core_repo.py", line 197, in _sync print "Task created with ID::", task_object['id'] TypeError: 'NoneType' object is unsubscriptable fixed! commit 77df019bfb8645c410c72cd77c4fcda98ba49b42 Author: Pradeep Kilambi <pkilambi> Date: Mon Jan 3 12:41:48 2011 -0500 $ sudo pulp-admin repo create --id=feedless Successfully created repository [ feedless ] $ sudo pulp-admin repo sync --id=feedless error: operation failed: "Repo [feedless] is not setup for sync. Please add packages using upload." Fixed in 0.120. [root@preethi ~]# rpm -q pulp pulp-0.0.120-1.fc14.noarch [root@preethi ~]# pulp-admin repo sync --id=feedless Repository with id: [feedless] not found Closing with Community Release 15 pulp-0.0.223-4. |