3

I'm running a simple python web scraping script within a docker container on Cloud Run, it is invoked from the Cloud Scheduler and gives an error:

File "/usr/local/lib/python3.8/multiprocessing/synchronize.py", line 57, in __init__ sl = self._semlock = _multiprocessing.SemLock( OSError: [Errno 38] Function not implemented

Even though I am running this in docker is there something disabled on Cloud Run that is causing this? Also would python multithreading work on Cloud Run?

I can't seem to see anything about this in the google cloud docs.

Dan
  • 386
  • 4
  • 14
  • 2
    Can you share your code? And yes, multi threading is available on Cloud Run, if it run in the current request. Multi processor is also available. – guillaume blaquiere Jan 28 '20 at 08:43
  • 2
    This looks like an unimplemented syscall on gVisor, can you please open an issue at Cloud Run issue tracker https://cloud.google.com/support/docs/issue-trackers ? – ahmet alp balkan Jan 30 '20 at 00:17
  • @Pentium10 looks similar but the solution there didn't work – Dan Feb 06 '20 at 22:36
  • I had this same issue when using a ThreadPool in my Cloud Run application. The answers here (even though the question asks about AWS Lambda) were helpful - https://stackoverflow.com/q/34005930/6410635 – dcordz May 06 '20 at 17:14

0 Answers0