Skip to content

JedisClusterKeyCommands#restore cause thread blocked #2589

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

Closed
piecebook opened this issue May 26, 2023 · 2 comments
Closed

JedisClusterKeyCommands#restore cause thread blocked #2589

piecebook opened this issue May 26, 2023 · 2 comments
Assignees
Labels
type: bug A general bug

Comments

@piecebook
Copy link

return JedisConverters.toString(this.connection.execute("RESTORE", key,

Hello,
I got a problem in JedisClusterKeyCommands#restore. In executeCommandOnSingleNode a connection has acquired and pass to the lambda, but the lambda try to acquire an other connection when replace was true. It seems to cause thread blocked when the connection pool is exhausted.
image

@spring-projects-issues spring-projects-issues added the status: waiting-for-triage An issue we've not yet triaged label May 26, 2023
@mp911de mp911de added type: bug A general bug and removed status: waiting-for-triage An issue we've not yet triaged labels May 30, 2023
@mp911de
Copy link
Member

mp911de commented May 30, 2023

You're right, this is a bug on our side. We need to move the connection.execute call out of the executeCommandOnSingleNode method. Meanwhile, Jedis introduced RetoreParams so that we no longer need to call our workaround.

@mp911de mp911de self-assigned this May 30, 2023
@piecebook
Copy link
Author

You're right, this is a bug on our side. We need to move the connection.execute call out of the executeCommandOnSingleNode method. Meanwhile, Jedis introduced RetoreParams so that we no longer need to call our workaround.

Thank you.

mp911de added a commit that referenced this issue May 30, 2023
We now use directly JedisCluster methods instead of using our command executor routing as JedisCluster exposes the methods and we no longer require our own command routing.

Closes #2589
mp911de added a commit that referenced this issue May 30, 2023
We now use directly JedisCluster methods instead of using our command executor routing as JedisCluster exposes the methods and we no longer require our own command routing.

Closes #2589
@mp911de mp911de added this to the 3.0.7 (2022.0.7) milestone May 30, 2023
jxblum pushed a commit to jxblum/spring-data-redis that referenced this issue Jun 8, 2023
We now use directly JedisCluster methods instead of using our command executor routing as JedisCluster exposes the methods and we no longer require our own command routing.

Closes spring-projects#2589
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug A general bug
Projects
None yet
Development

No branches or pull requests

3 participants