diff --git a/CHANGELOG.md b/CHANGELOG.md
index e9bc8410..3535f82b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -12,13 +12,14 @@ A preview of the next release can be installed from
- [Support self-contained binaries as uberjars!](https://github.com/babashka/babashka/wiki/Self-contained-executable#uberjar)
- Add `java.security.KeyFactory`, `java.security.spec.PKCS8EncodedKeySpec`, `java.net.URISyntaxException`
- Fix babashka.process/exec wrt `babashka.process/*defaults*`
-- #1632: Partial fix for `(.readPassword (System/console))`
+- [#1632](https://github.com/babashka/babashka/issues/1632): Partial fix for `(.readPassword (System/console))`
- Enable producing self-contained binaries using [uberjars](https://github.com/babashka/babashka/wiki/Self-contained-executable#uberjar)
- Bump httpkit to `2.8.0-beta3` (fixes GraalVM issue with virtual threads)
- Bump `deps.clj` and `fs`
- Expose `taoensso.timbre.appenders.core`
- nREPL: implement `ns-list` op
- SCI: optimize `swap!`, `deref` and `reset!` for normal atoms (rather than user-created `IAtom`s)
+- Add test for [#1639](https://github.com/babashka/babashka/issues/1639)
## 1.3.185 (2023-09-28)
diff --git a/test/babashka/xml_test.clj b/test/babashka/xml_test.clj
index b3fde386..7624688d 100644
--- a/test/babashka/xml_test.clj
+++ b/test/babashka/xml_test.clj
@@ -1,7 +1,7 @@
(ns babashka.xml-test
(:require [babashka.test-utils :as test-utils]
[clojure.string :as str]
- [clojure.test :refer [deftest is testing]]))
+ [clojure.test :refer [deftest is]]))
(def simple-xml-str "data")
@@ -15,3 +15,22 @@
(deftest xml-data-readers-test
(is (str/includes? (test-utils/bb nil round-trip-prog) simple-xml-str)))
+
+(deftest virtual-threads-bug-test
+ (is (str/starts-with? (test-utils/bb nil "(require '[clojure.core.async]
+ '[clojure.data.xml])
+
+(def go-blocks (atom []))
+
+(dotimes [_ 100]
+ (swap! go-blocks conj (clojure.core.async/go (clojure.data.xml/parse
+ (java.io.ByteArrayInputStream.
+ (.getBytes \"\" \"UTF-8\"))
+ :namespace-aware false
+ :skip-whitespace true))))
+
+(doseq [block @go-blocks]
+ (clojure.core.async/