grimoirelab-perceval icon indicating copy to clipboard operation
grimoirelab-perceval copied to clipboard

perceval raises exception when ran on launchpad

Open dbrumley opened this issue 4 years ago • 1 comments

Running perceval on launchpad raises exception.

To duplicate:

$ perceval --version
perceval 0.17.3
$ perceval launchpad ubuntu --from-date  '2019-12-01' 

This seems similar to https://github.com/chaoss/grimoirelab-perceval/issues/566

Backtrace

[2021-01-03 19:22:24,741] - Getting info for https://api.launchpad.net/1.0/~guiverc
Traceback (most recent call last):                                                 
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/archive.py", line 181, in store
    payload_dump, headers_dump, data_dump))          
sqlite3.IntegrityError: UNIQUE constraint failed: archive.hashcode

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backend.py", line 618, in run
    for item in big.items:
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backend.py", line 794, in __fetch
    raise e                              
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backend.py", line 788, in __fetch
    for item in items:
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backend.py", line 226, in fetch
    for item in self.fetch_items(category, **kwargs):
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backends/core/launchpad.py", line 141, in fetch_items
    for issue in self._fetch_issues(from_date):
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backends/core/launchpad.py", line 234, in _fetch_issues
    issue['bug_data'] = self.__fetch_issue_data(issue_id)
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backends/core/launchpad.py", line 249, in __fetch_issue_data
    raw_issue = self.client.issue(issue_id)
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backends/core/launchpad.py", line 395, in issue
    raw_text = self.__send_request(url_issue)
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backends/core/launchpad.py", line 445, in __send_request
    r = self.fetch(url, payload=params)
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/client.py", line 143, in fetch
    response = self._fetch_from_remote(url, payload, headers, method, stream, auth)
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/client.py", line 190, in _fetch_from_remote
    self.archive.store(url, payload, headers, response)
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/archive.py", line 186, in store
    raise ArchiveError(cause=msg)
perceval.errors.ArchiveError: data storage error; cause: duplicated entry 8ec79cb5783bfadbab13b2ccbbe4132ad6c2c67c


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/bin/perceval", line 188, in <module>
    main()                               
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/bin/perceval", line 132, in main
    cmd.run()                            
  File "/home/dbrumley/perceval/grimoirelab-perceval/venv/lib/python3.7/site-packages/perceval/backend.py", line 630, in run
    raise RuntimeError(str(e))
RuntimeError: data storage error; cause: duplicated entry 8ec79cb5783bfadbab13b2ccbbe4132ad6c2c67c

dbrumley avatar Jan 03 '21 19:01 dbrumley

Thanks for reporting it. I'll try to check it as soon as possible. You probably read it but you can avoid this error using the flag --no-archive.

sduenas avatar Jan 04 '21 11:01 sduenas

I'm closing this issue because it's related to the archive. We recommend not to use it.

sduenas avatar Oct 11 '23 16:10 sduenas