Closed Bug 1681632 Opened 3 years ago Closed 3 years ago

[eliot] [traceback] OSError: [Errno 18] Invalid cross-device link

Categories

(Eliot :: General, defect, P1)

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: willkg, Assigned: willkg)

References

Details

Attachments

(1 file)

Sentry issue: https://sentry.prod.mozaws.net/operations/symbols-stage/issues/10231014/

OSError: [Errno 18] Invalid cross-device link: '/tmp/junk/tmpiw107xt8.sym' -> '/tmp/cache/xul.pdb___E13A92B380043FC04C4C44205044422E1.symc'
  File "eliot/cache.py", line 139, in set
    Path(temp_fp.name).rename(filepath)
  File "python3.9/pathlib.py", line 1377, in rename
    self._accessor.rename(self, target)

What's going on is that in stage (and likely this will be true in prod, too), /tmp/junk/ and /tmp/cache/ are different volumes and so we can't just rename across them.

Need to figure out how to do this in the same volume, in a way that doesn't create a race condition when saving the file, and doesn't mess up the max size of the cache.

We should add some documentation for "how big should the cache be?" and maybe use "20x biggest SYM file" as a good rule-of-thumb or something like that.

The Sentry link doesn't work anymore. I'm pretty sure the data expired.

I see symbolication running in stage and I don't see errors coming out, so I think pr 2321 fixed it. Marking as FIXED.

Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED

Moving to Eliot product.

Component: Symbolication → General
Product: Tecken → Eliot
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: