Sudden "SOCKS4 tunnel failed, connection closed" error

Hi, thanks in advance for any insight you can provide.

About a day ago I started getting this error on attempting to create a client through the client api on a project which has been connecting trouble free for the better part of this year. To my knowledge nothing significant has changed with my cloud configuration between last week (when it was definitely connecting) and today. My problem is very similar to that described in this topic, including the curl test failing:

I’ve examined my aws setup and everything looks green, admittedly I’m a bit out of my depth back there. Any direction as to where I should be looking to diagnose/resolve this issue would be much appreciated.

stack trace is as follows:

{:cognitect.anomalies/category :cognitect.anomalies/fault,
:cognitect.anomalies/message “SOCKS4 tunnel failed, connection closed”,
:cognitect.http-client/throwable #error {
:cause “SOCKS4 tunnel failed, connection closed”
:via
[{:type java.io.IOException
:message “SOCKS4 tunnel failed, connection closed”
:at [org.eclipse.jetty.client.Socks4Proxy$Socks4ProxyConnection onFillable “Socks4Proxy.java” 165]}]
:trace
[[org.eclipse.jetty.client.Socks4Proxy$Socks4ProxyConnection onFillable “Socks4Proxy.java” 165]
[org.eclipse.jetty.io.AbstractConnection$ReadCallback succeeded “AbstractConnection.java” 305]
[org.eclipse.jetty.io.FillInterest fillable “FillInterest.java” 103]
[org.eclipse.jetty.io.ChannelEndPoint$2 run “ChannelEndPoint.java” 117]
[org.eclipse.jetty.util.thread.QueuedThreadPool runJob “QueuedThreadPool.java” 765]
[org.eclipse.jetty.util.thread.QueuedThreadPool$2 run “QueuedThreadPool.java” 683]
[java.lang.Thread run “Thread.java” 748]]},
:config
{:server-type :cloud,
:region “us-east-2”,
:system “[my-project]”,
:query-group “[my-project]”,
:endpoint “http://entry.[my-project].datomic.net:8182/”,
:proxy-port 8182,
:endpoint-map
{:headers {“host” “entry.[my-project].us-east-2.datomic.net:8182”},
:scheme “http”,
:server-name “entry.[my-project].us-east-2.datomic.net”,
:server-port 8182}}}
cloud.clj: 178 datomic.client.impl.cloud/get-s3-auth-path
cloud.clj: 169 datomic.client.impl.cloud/get-s3-auth-path
cloud.clj: 210 datomic.client.impl.cloud/create-client
cloud.clj: 193 datomic.client.impl.cloud/create-client
Var.java: 384 clojure.lang.Var/invoke
impl.clj: 24 datomic.client.api.impl/dynarun
impl.clj: 21 datomic.client.api.impl/dynarun
impl.clj: 31 datomic.client.api.impl/dynacall
impl.clj: 28 datomic.client.api.impl/dynacall
async.clj: 68 datomic.client.api.async/client
async.clj: 64 datomic.client.api.async/client
sync.clj: 78 datomic.client.api.sync/client
sync.clj: 76 datomic.client.api.sync/client
Var.java: 384 clojure.lang.Var/invoke
impl.clj: 24 datomic.client.api.impl/dynarun
impl.clj: 21 datomic.client.api.impl/dynarun
impl.clj: 31 datomic.client.api.impl/dynacall
impl.clj: 28 datomic.client.api.impl/dynacall
api.clj: 79 datomic.client.api/client
api.clj: 46 datomic.client.api/client
api.clj: 76 datomic.client.api/client
api.clj: 46 datomic.client.api/client
AFn.java: 154 clojure.lang.AFn/applyToHelper
AFn.java: 144 clojure.lang.AFn/applyTo
Compiler.java: 3702 clojure.lang.Compiler$InvokeExpr/eval
Compiler.java: 457 clojure.lang.Compiler$DefExpr/eval
Compiler.java: 7182 clojure.lang.Compiler/eval
Compiler.java: 7132 clojure.lang.Compiler/eval
core.clj: 3214 clojure.core/eval
core.clj: 3210 clojure.core/eval
main.clj: 437 clojure.main/repl/read-eval-print/fn
main.clj: 437 clojure.main/repl/read-eval-print
main.clj: 458 clojure.main/repl/fn
main.clj: 458 clojure.main/repl
main.clj: 368 clojure.main/repl
RestFn.java: 137 clojure.lang.RestFn/applyTo
core.clj: 665 clojure.core/apply
core.clj: 660 clojure.core/apply
regrow.clj: 18 refactor-nrepl.ns.slam.hound.regrow/wrap-clojure-repl/fn
RestFn.java: 1523 clojure.lang.RestFn/invoke
interruptible_eval.clj: 79 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 55 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 142 nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn
AFn.java: 22 clojure.lang.AFn/run
session.clj: 171 nrepl.middleware.session/session-exec/main-loop/fn
session.clj: 170 nrepl.middleware.session/session-exec/main-loop
AFn.java: 22 clojure.lang.AFn/run
Thread.java: 748 java.lang.Thread/run

Thanks again.

Are you seeing this on your local dev machine?
This error generally indicates that your SOCKS proxy script isn’t running - I would check your proxy script first.