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

Exception: Problems reading data from Binary store #13316

Closed
ghilainm opened this issue Jun 3, 2020 · 6 comments
Closed

Exception: Problems reading data from Binary store #13316

ghilainm opened this issue Jun 3, 2020 · 6 comments

Comments

@ghilainm
Copy link

@ghilainm ghilainm commented Jun 3, 2020

I have an exception while running gradle dependencies.

* What went wrong:
Execution failed for task ':dependencies'.
> Could not resolve all dependencies for configuration ':compileClasspath'.
   > Problems reading data from Binary store in /tmp/gradle15981587407420935578.bin offset 525 exists? true

Here are the characteristics of my project:

  • Java project using java-library plugin
  • Tried with Gradle 6.4.1 / 6.5-rc-1 / 6.5
  • Using dependency locking
  • Simple project (no multi-project, no composite build)
  • Using Spring platform
  • Using custom plugin which adds configuration
  • Using several repositories
  • Using latest.release
  • No using the wrapper

I have tried to:

  • Delete completely my grade directory (caches/wrapper/...)
  • With and without dependency locking
  • Run command gradle clean dependencies --no-parallel --no-build-cache -> same error

However, running the task gradle compileJava works.

Any idea what I could try more?

@mmoayyed
Copy link

@mmoayyed mmoayyed commented Jun 3, 2020

I have run into the same problem.

Running:

  • JDK 11.0.7
  • Gradle 6.5 (Also seeing issues with 6.4.1 and 6.4)
  • MacOS Catalina

To reproduce:

git clone --depth 1 git@github.com:mmoayyed/cas.git
cd cas/support/cas-server-support-ignite-ticket-registry
../../gradlew dependencies


Problems reading data from Binary store in 
/private/var/folders/wf/rcc_265x1ld1n8jh47bgmbqm0000gn/T/gradle986346894448844168.bin offset 7361 exists? true

So far,

  • Removed the local .gradle folder; No difference
  • Removed the home .gradle folder; No difference
  • Ran the command, having disabled parallel, config-on-demand and daemon; No difference
  • Tried on a brand new Windows 10 machine; No difference
  • With or without wrapper; No difference

Update v1

  • Just to make sure this is not related to a local corrupt cache, etc, I was also able to see this failure while having SSHed into a build environment backed by Github Actions. Same issue popped up there. Another observation is that the issue seems specific to the compileClasspath configuration; others seem to do OK.
@ghilainm
Copy link
Author

@ghilainm ghilainm commented Jun 4, 2020

I have got exactly the same issue in another context. I could boil it down to one dependency causing the issue, but don't know why this dependency is causing the issue... if you wanna do remote debug I am available.

I did play around with that dependency and changing it's configuration from implementation to runtimeOnly fixes the issue (but that's not what I want obviously) and changing from latest.release to a fixed version (tried several versions) didn't change anything.

@ljacomet
Copy link
Member

@ljacomet ljacomet commented Jun 5, 2020

Thanks for the report and the reproducer.

While I can't say for sure that the issue in the reproducer is the exact same one as the original report, it allowed to track a real issue.

Because of the usage of excludes, the graph building ends up recomputing a large number of constraints. One of those is the sole version specifier for org.glassfish:jakarta.el, as the real dependency edge is without version. And the graph building contains a bug that results in disconnected node.

Validating a fix and then I will be able to share a custom build for you to validate.

ljacomet added a commit that referenced this issue Jun 5, 2020
When restarting an edge, it is possible that the new state fails to
compute the target node. In some cases, it is important to make sure the
detached edge is effectively tracked as an unattached edge.

Issue #13316
@ljacomet
Copy link
Member

@ljacomet ljacomet commented Jun 5, 2020

We have published a custom version to allow you to confirm the fix works.

Could you test it?
@mmoayyed I have tested it on your reproducer and the problem is fixed.

@ghilainm Given the root cause, it is quite likely this fixes the issue for you as well as Spring Boot projects are particularly sensitive to this bug.

Testing can be done by updating the wrapper:

./gradlew wrapper --gradle-version=6.6-branch-ljacomet_dependency_management_graph_invalid-20200605145923+0000
@mmoayyed
Copy link

@mmoayyed mmoayyed commented Jun 5, 2020

@ljacomet Appreciate the update. I will provide an update shortly. Thanks much for the help!

ljacomet added a commit that referenced this issue Jun 8, 2020
When restarting an edge, it is possible that the new state fails to
compute the target node. In some cases, it is important to make sure the
detached edge is effectively tracked as an unattached edge.

Fixes #13251
Fixes #13316
ljacomet added a commit that referenced this issue Jun 8, 2020
When restarting an edge, it is possible that the new state fails to
compute the target node. In some cases, it is important to make sure the
detached edge is effectively tracked as an unattached edge.

Fixes #13251
Fixes #13316
@mmoayyed
Copy link

@mmoayyed mmoayyed commented Jun 9, 2020

@ljacomet I can confirm that the issue is fixed/gone. Thanks very much!

@ljacomet ljacomet closed this in 1b720bf Jun 9, 2020
@ljacomet ljacomet added this to the 6.6 RC1 milestone Jun 9, 2020
ljacomet added a commit that referenced this issue Jun 29, 2020
When restarting an edge, it is possible that the new state fails to
compute the target node. In some cases, it is important to make sure the
detached edge is effectively tracked as an unattached edge.

Fixes #13251
Fixes #13316
@ljacomet ljacomet modified the milestones: 6.6 RC1, 6.5.1 Jun 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.