Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 670777 - =sys-apps/portage-2.3.51: FileNotFoundError: [Errno 2] No such file or directory: b'/var/log/portage/...log.gz'
Summary: =sys-apps/portage-2.3.51: FileNotFoundError: [Errno 2] No such file or direct...
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-11-09 17:41 UTC by Rick Farina (Zero_Chaos)
Modified: 2018-11-09 18:36 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rick Farina (Zero_Chaos) gentoo-dev 2018-11-09 17:41:14 UTC
>>> Emerging binary (57 of 245) dev-python/backports-lzma-0.0.10::gentoo
>>> Jobs: 56 of 245 complete, 1 running             Load avg: 3.1, 5.6, 11.0Exception in callback AsynchronousTask.wait()
handle: <Handle AsynchronousTask.wait()>
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/portage/util/__init__.py", line 1058, in _do_stat
    return os.stat(filename)
  File "/usr/lib/python3.6/site-packages/portage/__init__.py", line 250, in __call__
    rval = self._func(*wrapped_args, **wrapped_kwargs)
FileNotFoundError: [Errno 2] No such file or directory: b'/var/log/portage/dev-python:backports-lzma-0.0.10:20181108-052527.log.gz'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/asyncio/events.py", line 145, in _run
    self._callback(*self._args)
  File "/usr/lib/python3.6/site-packages/_emerge/AsynchronousTask.py", line 84, in wait
    self._wait_hook()
  File "/usr/lib/python3.6/site-packages/_emerge/AsynchronousTask.py", line 195, in _wait_hook
    self._exit_listener_stack.pop()(self)
  File "/usr/lib/python3.6/site-packages/_emerge/Binpkg.py", line 157, in _start_fetcher
    self._fetcher_exit(fetcher)
  File "/usr/lib/python3.6/site-packages/_emerge/Binpkg.py", line 186, in _fetcher_exit
    self._start_task(verifier, self._verifier_exit)
  File "/usr/lib/python3.6/site-packages/_emerge/CompositeTask.py", line 112, in _start_task
    task.start()
  File "/usr/lib/python3.6/site-packages/_emerge/AsynchronousTask.py", line 30, in start
    self._start()
  File "/usr/lib/python3.6/site-packages/_emerge/BinpkgVerifier.py", line 59, in _start
    self._digester_exit)
  File "/usr/lib/python3.6/site-packages/_emerge/CompositeTask.py", line 112, in _start_task
    task.start()
  File "/usr/lib/python3.6/site-packages/_emerge/AsynchronousTask.py", line 30, in start
    self._start()
  File "/usr/lib/python3.6/site-packages/portage/util/_async/FileDigester.py", line 30, in _start
    ForkProcess._start(self)
  File "/usr/lib/python3.6/site-packages/_emerge/SpawnProcess.py", line 145, in _start
    self._pipe_logger.start()
  File "/usr/lib/python3.6/site-packages/_emerge/AsynchronousTask.py", line 30, in start
    self._start()
  File "/usr/lib/python3.6/site-packages/portage/util/_async/PipeLogger.py", line 40, in _start
    mode=0o660)
  File "/usr/lib/python3.6/site-packages/portage/util/__init__.py", line 1251, in apply_secpass_permissions
    stat_cached = _do_stat(filename, follow_links=follow_links)
  File "/usr/lib/python3.6/site-packages/portage/util/__init__.py", line 1068, in _do_stat
    raise FileNotFound(filename)
portage.exception.FileNotFound: /var/log/portage/dev-python:backports-lzma-0.0.10:20181108-052527.log.gz
--Return--
> /usr/lib/python3.6/site-packages/portage/util/_eventloop/asyncio_event_loop.py(76)_internal_caller_exception_handler()->None
-> pdb.set_trace()
(Pdb)
Comment 1 Zac Medico gentoo-dev 2018-11-09 18:36:24 UTC
The log file must have been removed by a concurrent process immediately after it was created, since it failed in the apply_secpass_permissions call which follows the open call that creates the log file:

> 	self._log_file = open(_unicode_encode(log_file_path,
> 		encoding=_encodings['fs'], errors='strict'), mode='ab')
> 	if log_file_path.endswith('.gz'):
> 		self._log_file_real = self._log_file
> 		self._log_file = gzip.GzipFile(filename='', mode='ab',
> 			fileobj=self._log_file)
> 
> 	portage.util.apply_secpass_permissions(log_file_path,
> 		uid=portage.portage_uid, gid=portage.portage_gid,
> 		mode=0o660)

Do you have any idea what might have removed the log file? Generally, this type of issue is CANTFIX, since you have to correct whatever caused the interference on your end.