This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-01-05
Channels
- # announcements (14)
- # babashka (51)
- # beginners (154)
- # calva (24)
- # cider (4)
- # clj-kondo (24)
- # cljfx (11)
- # cljs-dev (3)
- # clojure (259)
- # clojure-europe (14)
- # clojure-nl (2)
- # clojure-seattle (8)
- # clojure-spec (6)
- # clojure-taiwan (1)
- # clojure-uk (52)
- # clojurescript (123)
- # conjure (43)
- # core-async (15)
- # datomic (14)
- # events (1)
- # fulcro (90)
- # helix (7)
- # jobs (6)
- # meander (10)
- # nrepl (1)
- # off-topic (13)
- # pathom (1)
- # portal (8)
- # re-frame (7)
- # reveal (11)
- # shadow-cljs (99)
- # spacemacs (11)
- # testing (11)
- # vim (63)
Hello
I'm getting a wired
Error handling response - class java.lang.StringIndexOutOfBoundsException: start 95, end 92, length 115
It happens SOMETIMES (~10%) when I run a deftest
.
Inside this deftest
has a async/thread
.
Looking at visualVM I have a stable count of 19
threads. There is no new dead/respawn threads then it occurs (looking just at visualvm graphs)
I addeded an uncaught-exceptions-handler
as in
https://stuartsierra.com/2015/05/27/clojure-uncaught-exceptions
But looks like that it has no effect.
How can I debug this?
@souenzzo so you aren't getting a stack trace or anything?
my first instinct would be to wrap the body of the async/thread in (try ... (catch Exception e (println e)))
- that will show the clojure print value for the exception including the stack
are you using http://netty-socket.io?
this is sort of out of left field, and I only jumped on it because that vaguely reminds me of a unicode decoding bug in that
that error is from the editor, not from clojure, it is sending some code to clojure to run, and getting back the exception instead of what it expects
1. you have a client and server (client is the editor, server is the language server or repl or whatever)
2. the client is sending a command or some code to the server
3. the server is throwing an error, the string out of bounds exception
4. the server is reporting the error to the client as something like (str ex)
5. the client on getting the class java.lang.StringIndexOutOfBoundsException: start 95, end 92, length 115
is reporting the error to you
so "class java.lang.StringIndexOutOfBoundsException: start 95, end 92, length 11" is the error being generated on the server and "Error handling response -" is something the client is tacking on to the front of it