Skip to content

Failed rename for deleted session is not ignored with Redisson #1743

Closed
@eager

Description

@eager

This is same underlying issue as #1270, with a small twist—the exception message has more detail.

Describe the bug
We’re using RedissonConnectionFactory with our RedisOperationsSessionRepository (we’re still on Spring Session 2.1.13). Redisson’s exception handling adds a little extra context to the exception message, so this check in handleErrNoSuchKeyError fails:

if (!"ERR no such key".equals(NestedExceptionUtils.getMostSpecificCause(ex).getMessage())) {
	// NestedExceptionUtils.getMostSpecificCause(ex).getMessage() →
	//   "ERR no such key. channel: [id: 0xec125091, L:/100.96.17.194:46330 - R:redis/100.67.2.163:6379] command: (RENAME), params: [[115, 112, 114, 105, 110, 103, 58, 115, 101, 115, ...], [115, 112, 114, 105, 110, 103, 58, 115, 101, 115, ...]]"

	throw ex;
}

and the exception bubbles up.

To Reproduce
Make concurrent requests with the same session ID, which both result in changing the session ID—typically via session fixation prevention.

Expected behavior
The session repository gracefully handle concurrent requests that change the session ID.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions