Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed to compile project because file in bloop-bsp-clients-classes already exists #1989

Open
kpodsiad opened this issue Jan 23, 2023 · 0 comments
Assignees
Milestone

Comments

@kpodsiad
Copy link
Collaborator

Hit this issue with metals when navigation just stopped working silently. Bloop cli also was failing to compile project without any reason, only after I tried bloop compile --verbose --project I found what's the issue. Then I discovered plenty of directoties under each project's bloop-internal-classes, seems like bloop is not handling lifecycle of them.
Some time ago I saw a issue when someone was complaining about how much bloop is writing to the hard drive and I have to second that opinion.

Below I paste what I got from verbose logging:

[D] Increasing counter for PATH/.bloop/project_name/bloop-internal-classes/classes-Metals-3XCrIIkjTx6g-RwgkDVONA==-_miyDw_wTvK_oplHQK0jXA== to 26
[T] java.nio.file.FileAlreadyExistsException: PATH/.bloop/project_name/bloop-bsp-clients-classes/classes-Metals-3XCrIIkjTx6g-RwgkDVONA==/package/className.class
[T]     java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:94)
[T]     java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
[T]     java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
[T]     java.base/sun.nio.fs.UnixCopyFile.copyFile(UnixCopyFile.java:246)
[T]     java.base/sun.nio.fs.UnixCopyFile.copy(UnixCopyFile.java:603)
[T]     java.base/sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:257)
[T]     java.base/java.nio.file.Files.copy(Files.java:1305)
[T]     bloop.io.ParallelOps$.copy$1(ParallelOps.scala:161)
[T]     bloop.io.ParallelOps$.$anonfun$copyDirectories$8(ParallelOps.scala:180)
[T]     scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[T]     monix.eval.internal.TaskRunLoop$.startFuture(TaskRunLoop.scala:494)
[T]     monix.eval.Task.runToFutureOpt(Task.scala:586)
[T]     monix.eval.internal.TaskDeprecated$Extensions.runSyncMaybeOptPrv(TaskDeprecated.scala:128)
[T]     monix.eval.internal.TaskDeprecated$Extensions.$anonfun$coeval$1(TaskDeprecated.scala:303)
[T]     monix.eval.Coeval$Always.apply(Coeval.scala:1451)
[T]     monix.eval.Coeval.value(Coeval.scala:258)
[T]     bloop.io.ParallelOps$.$anonfun$copyDirectories$7(ParallelOps.scala:220)
[T]     monix.reactive.internal.consumers.ForeachAsyncConsumer$$anon$1.onNext(ForeachAsyncConsumer.scala:44)
[T]     monix.reactive.internal.consumers.LoadBalanceConsumer$$anon$1.$anonfun$signalNext$1(LoadBalanceConsumer.scala:218)
[T]     monix.execution.internal.InterceptRunnable.run(InterceptRunnable.scala:27)
[T]     java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[T]     java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[T]     java.base/java.lang.Thread.run(Thread.java:833)
[E] Unexpected error when compiling project_name: 'PATH/.bloop/project_name/bloop-bsp-clients-classes/classes-Metals-3XCrIIkjTx6g-RwgkDVONA==/package/className.class'
[T] java.nio.file.FileAlreadyExistsException: PATH/.bloop/project_name/bloop-bsp-clients-classes/classes-Metals-3XCrIIkjTx6g-RwgkDVONA==/package/className.class
[T]     java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:94)
[T]     java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
[T]     java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
[T]     java.base/sun.nio.fs.UnixCopyFile.copyFile(UnixCopyFile.java:246)
[T]     java.base/sun.nio.fs.UnixCopyFile.copy(UnixCopyFile.java:603)
[T]     java.base/sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:257)
[T]     java.base/java.nio.file.Files.copy(Files.java:1305)
[T]     bloop.io.ParallelOps$.copy$1(ParallelOps.scala:161)
[T]     bloop.io.ParallelOps$.$anonfun$copyDirectories$8(ParallelOps.scala:180)
[T]     scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[T]     monix.eval.internal.TaskRunLoop$.startFuture(TaskRunLoop.scala:494)
[T]     monix.eval.Task.runToFutureOpt(Task.scala:586)
[T]     monix.eval.internal.TaskDeprecated$Extensions.runSyncMaybeOptPrv(TaskDeprecated.scala:128)
[T]     monix.eval.internal.TaskDeprecated$Extensions.$anonfun$coeval$1(TaskDeprecated.scala:303)
[T]     monix.eval.Coeval$Always.apply(Coeval.scala:1451)
[T]     monix.eval.Coeval.value(Coeval.scala:258)
[T]     bloop.io.ParallelOps$.$anonfun$copyDirectories$7(ParallelOps.scala:220)
[T]     monix.reactive.internal.consumers.ForeachAsyncConsumer$$anon$1.onNext(ForeachAsyncConsumer.scala:44)
[T]     monix.reactive.internal.consumers.LoadBalanceConsumer$$anon$1.$anonfun$signalNext$1(LoadBalanceConsumer.scala:218)
[T]     monix.execution.internal.InterceptRunnable.run(InterceptRunnable.scala:27)
[T]     java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[T]     java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[T]     java.base/java.lang.Thread.run(Thread.java:833)
[E] Failed to compile 'project_name'
[D] Finished copying classes from PATH/.bloop/project_name_2/bloop-internal-classes/classes-Metals-7A_ERWYaTdq8TLiI1RVipQ==-geiXUegkSBC0Zphhqlz7WQ== to PATH/.bloop/project_name_2/bloop-bsp-clients-classes/classes-bloop-cli-6HcB8NZ2R7GY_IjXSqO6KA==
@tgodzik tgodzik added this to the Bloop v1.5.7 milestone Apr 6, 2023
@tgodzik tgodzik self-assigned this Apr 6, 2023
@tgodzik tgodzik modified the milestones: Bloop v1.5.7, Bloop 1.5.10 Jul 12, 2023
tgodzik added a commit to tgodzik/bloop that referenced this issue Jul 12, 2023
This might cause the compiler to never work again until restart. It seems that the reason might be that one of the files is locked, but this is highly difficult to reproduce.

Connected to scalacenter#1989
tgodzik added a commit to tgodzik/bloop that referenced this issue Jul 13, 2023
This might cause the compiler to never work again until restart. It seems that the reason might be that one of the files is locked, but this is highly difficult to reproduce.

Connected to scalacenter#1989
tgodzik added a commit that referenced this issue Jul 17, 2023
This might cause the compiler to never work again until restart. It seems that the reason might be that one of the files is locked, but this is highly difficult to reproduce.

Connected to #1989
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants