Docker Mac-Beta Fails with an IO error, by using a java/scala App with SBT

Expected behavior

Running the command ‘clean’ in the SBT Shell removes library dependencies and cache.

Actual behavior

An Error is thrown

java.io.IOException: No such file or directory
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:1012)
at jline.console.history.FileHistory.flush(FileHistory.java:82)
at sbt.JLine.readLineWithHistory(LineReader.scala:28)
at sbt.JLine.sbt$JLine$$unsynchronizedReadLine(LineReader.scala:19)
at sbt.JLine$$anonfun$readLine$1.apply(LineReader.scala:16)
at sbt.JLine$$anonfun$readLine$1.apply(LineReader.scala:16)
at sbt.JLine$$anonfun$withJLine$1.apply(LineReader.scala:114)
at sbt.JLine$$anonfun$withJLine$1.apply(LineReader.scala:112)
at sbt.JLine$.withTerminal(LineReader.scala:86)
at sbt.JLine$.withJLine(LineReader.scala:112)
at sbt.JLine.readLine(LineReader.scala:16)
at sbt.BasicCommands$$anonfun$shell$1.apply(BasicCommands.scala:164)
at sbt.BasicCommands$$anonfun$shell$1.apply(BasicCommands.scala:160)
at sbt.Command$$anonfun$command$1$$anonfun$apply$1.apply(Command.scala:29)
at sbt.Command$$anonfun$command$1$$anonfun$apply$1.apply(Command.scala:29)
at sbt.Command$.process(Command.scala:92)
at sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:98)
at sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:98)
at sbt.State$$anon$1.process(State.scala:184)
at sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:98)
at sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:98)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
at sbt.MainLoop$.next(MainLoop.scala:98)
at sbt.MainLoop$.run(MainLoop.scala:91)
at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:70)
at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:65)
at sbt.Using.apply(Using.scala:24)
at sbt.MainLoop$.runWithNewLog(MainLoop.scala:65)
at sbt.MainLoop$.runAndClearLast(MainLoop.scala:48)
at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:32)
at sbt.MainLoop$.runLogged(MainLoop.scala:24)
at sbt.StandardMain$.runManaged(Main.scala:53)
at sbt.xMain.run(Main.scala:28)
at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
at xsbt.boot.Launch$.withContextLoader(Launch.scala:128)
at xsbt.boot.Launch$.run(Launch.scala:109)
at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:35)
at xsbt.boot.Launch$.launch(Launch.scala:117)
at xsbt.boot.Launch$.apply(Launch.scala:18)
at xsbt.boot.Boot$.runImpl(Boot.scala:41)
at xsbt.boot.Boot$.main(Boot.scala:17)
at xsbt.boot.Boot.main(Boot.scala)
[error] java.io.IOException: No such file or directory
[error] Use ‘last’ for the full log.

Information

  • the output of:
    • pinata diagnose -u on OSX
      OS X: version 10.11.4 (build: 15E65)
      Docker.app: version v1.11.1-beta11
      Running diagnostic tests:
      [OK] docker-cli
      [OK] Moby booted
      [OK] driver.amd64-linux
      [OK] vmnetd
      [OK] osxfs
      [OK] db
      [OK] slirp
      [OK] menubar
      [OK] environment
      [OK] Docker
      [OK] VT-x
      Docker logs are being collected into /tmp/20160517-184638.tar.gz
      Most specific failure is: No error was detected
      Your unique id is: 0BEF0833-4D85-40B9-A002-D52A60D12F3B

Steps to reproduce the behavior

Unfortunately is hard to reproduce cause it is a production application. However, it is reasonable to assume that this behavior can be reproduced on any application used SBT and Scala.

@allquantor do you know what file or directory that SBT is trying to find?