killme2008 / killme2008/ring-session-memcached

Key must not be blank

Open
#1 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Clojure
Stars
3
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Hello there!

First of all, respect that you open sourced this four years ago and it has not needed any changes. :-) I'm using it for one of my projects, and once in a blue moon I get this from memcached:

```
java.lang.IllegalArgumentException: Key must not be blank
```

the relevant parts of the stack looks like this:

```
net.rubyeye.xmemcached.utils.ByteUtils.getBytes ByteUtils.java: 53
net.rubyeye.xmemcached.XMemcachedClient.checkStoreArguments XMemcachedClient.java: 1303
net.rubyeye.xmemcached.XMemcachedClient.set XMemcachedClient.java: 1277
net.rubyeye.xmemcached.XMemcachedClient.set XMemcachedClient.java: 1336
net.rubyeye.xmemcached.XMemcachedClient.set XMemcachedClient.java: 1323
clj-xmemcached.core/xset core.clj: 72
ring.middleware.session.memcached.MemcachedStore/write-session memcached.clj: 15
ring.middleware.session/bare-session-response session.clj: 46
ring.middleware.session/session-response session.clj: 67
ring.middleware.session/wrap-session/fn session.clj: 98
```

Do you have any idea what is going on here? Ever experienced it yourself?

Thanks :)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the session write path through core.clj, memcached.clj, and the stack frames in XMemcachedClient and ByteUtils. Investigate when the session key reaches the memcached client as blank and whether the intermittent case can be reproduced. Done means the cause is identified and a targeted fix or regression test prevents blank keys.

Written by the indexing model from the issue text.

Assessment

Tech stack
clojure, java
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.