Problems upgrading to overtone 0.10.6

93 views
Skip to first unread message

Joseph

unread,
Apr 3, 2020, 11:03:00 AM4/3/20
to Overtone
Hello,

I am working to update a clojure/overtone project from

clojure 1.8.0
overtone 0.10.3

to

clojure 1.10.0
overtone 0.10.6

The projet works as expected when I am using clojure 1.8 and
overtone 0.10.6. When I switch to the newer versions I get
errors. First, if I do not start jack before starting the app
(using lein repl) I get the error(s)

jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock

If I start jack first, I get the following error output

--> Loading Overtone...
SC FFT global init: cosTable initialised.
--> Booting internal SuperCollider server...
JackDriver: client name is 'Overtone'
SC_AudioDriver: sample rate = 44100.000000, driver's block size = 1024
--> Connecting to internal SuperCollider server...
java: ../common/JackGraphManager.cpp:44: void Jack::JackGraphManager::AssertPort(jack_port_id_t): Assertion `port_index < fPortMax' failed.
Exception in thread "Thread-1" clojure.lang.ExceptionInfo: Subprocess failed {:exit-code 134}
        at clojure.core$ex_info.invokeStatic(core.clj:4617)
        at clojure.core$ex_info.invoke(core.clj:4617)
        at leiningen.core.eval$fn__4134.invokeStatic(eval.clj:264)
        at leiningen.core.eval$fn__4134.invoke(eval.clj:260)
        at clojure.lang.MultiFn.invoke(MultiFn.java:233)
        at leiningen.core.eval$eval_in_project.invokeStatic(eval.clj:366)
        at leiningen.core.eval$eval_in_project.invoke(eval.clj:356)
        at leiningen.repl$server$fn__5864.invoke(repl.clj:244)
        at clojure.lang.AFn.applyToHelper(AFn.java:152)
        at clojure.lang.AFn.applyTo(AFn.java:144)
        at clojure.core$apply.invokeStatic(core.clj:646)
        at clojure.core$with_bindings_STAR_.invokeStatic(core.clj:1881)
        at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1881)
        at clojure.lang.RestFn.invoke(RestFn.java:425)
        at clojure.lang.AFn.applyToHelper(AFn.java:156)
        at clojure.lang.RestFn.applyTo(RestFn.java:132)
        at clojure.core$apply.invokeStatic(core.clj:650)
        at clojure.core$bound_fn_STAR_$fn__4671.doInvoke(core.clj:1911)
        at clojure.lang.RestFn.invoke(RestFn.java:397)
        at clojure.lang.AFn.run(AFn.java:22)
        at java.lang.Thread.run(Thread.java:748)

and in the jack messages I see many lines of

JackEngine::XRun: client = Overtone was not finished, state = Triggered
Cannot read socket fd = 25 err = Connection reset by peer

followed by

Could not read notification result
ClientNotify fails name = Overtone notification = 18 val1 = 1 val2 = 0
Cannot write socket fd = 25 err = Broken pipe
CheckRes error
Could not write notification
ClientNotify fails name = Overtone notification = 4 val1 = 0 val2 = 0
Cannot write socket fd = 25 err = Broken pipe
CheckRes error
Could not write notification
ClientNotify fails name = Overtone notification = 3 val1 = 0 val2 = 0
Unknown request 4294967295
CheckSize error size = 0 Size() = 12
CheckRead error

I have tried these same steps using clojure 1.9.0 and overtone 0.10.6
with had the same results.

I started a new project with clojure 1.10.0 and overtone 0.10.6
- started jack
- started a clojure repl
- typed (use 'overtone.core)
- typed (boot-internal-server)

and I received the the same jack messages listed above and the following messages
and stack trace in the clojure repl

user=> (boot-internal-server)
--> Booting internal SuperCollider server...
JackDriver: client name is 'Overtone'
SC_AudioDriver: sample rate = 44100.000000, driver's block size = 1024
--> Connecting to internal SuperCollider server...
java: ../common/JackGraphManager.cpp:44: void Jack::JackGraphManager::AssertPort (jack_port_id_t): Assertion `port_index < fPortMax' failed.
SocketException The transport's socket appears to have lost its connection to the nREPL server
Exception in thread "Thread-1" clojure.lang.ExceptionInfo: Subprocess failed {:exit-code 134}
at clojure.core$ex_info.invokeStatic (core.clj:4617)
at clojure.core$ex_info.invoke (core.clj:4617)
at leiningen.core.eval$fn__4134.invokeStatic (eval.clj:264)
at leiningen.core.eval$fn__4134.invoke (eval.clj:260)
at clojure.lang.MultiFn.invoke (MultiFn.java:233)
at leiningen.core.eval$eval_in_project.invokeStatic (eval.clj:366)
at leiningen.core.eval$eval_in_project.invoke (eval.clj:356)
at leiningen.repl$server$fn__5864.invoke (repl.clj:244)
at clojure.lang.AFn.applyToHelper (AFn.java:152)
at clojure.lang.AFn.applyTo (AFn.java:144)
at clojure.core$apply.invokeStatic (core.clj:646)
at clojure.core$with_bindings_STAR_.invokeStatic (core.clj:1881)
at clojure.core$with_bindings_STAR_.doInvoke (core.clj:1881)
at clojure.lang.RestFn.invoke (RestFn.java:425)
at clojure.lang.AFn.applyToHelper (AFn.java:156)
at clojure.lang.RestFn.applyTo (RestFn.java:132)
at clojure.core$apply.invokeStatic (core.clj:650)
at clojure.core$bound_fn_STAR_$fn__4671.doInvoke (core.clj:1911)
at clojure.lang.RestFn.invoke (RestFn.java:397)
at clojure.lang.AFn.run (AFn.java:22)
at java.lang.Thread.run (Thread.java:748)
clojure.tools.nrepl.transport/bencode/fn--5154/fn--5155 (transport.clj:95)
clojure.tools.nrepl.transport/bencode/fn--5154 (transport.clj:95)
clojure.tools.nrepl.transport/fn-transport/fn--5126 (transport.clj:42)
clojure.core/binding-conveyor-fn/fn--4676 (core.clj:1938)
java.util.concurrent.FutureTask.run (FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:624)
java.lang.Thread.run (Thread.java:748)
Bye for now!

If I use clojure 1.10 and the older overtone version (0.10.3), Overtone is able to
start jack and load (I see the overtone banner), however I then get many spec errors.

I am running this using Fedora 31.

I have not been able to fix this myself, and am hoping someone here might have an idea
about what is causing this, and how I might correct it.

Thanks

Hlöðver Sigurðsson

unread,
Apr 3, 2020, 11:54:54 AM4/3/20
to Overtone
Interesting indeed. Few questions to make the debugging faster

1. Can you paste your overtone config file from ~/.overtone/config.clj

2. Can you tell me which jackd version you are using? ` jackd  -V` (im on 1.9.14)

3. Is everything fine when you run the latest supercollider with jack (rule out SC jack module changed)

4. Does the latest master from github work (there are some unreleased changes, best is to test with deps.edn instead of leiningen).

Joseph

unread,
Apr 3, 2020, 1:27:49 PM4/3/20
to Overtone


On Friday, April 3, 2020 at 10:54:54 AM UTC-5, Hlöðver Sigurðsson wrote:
Interesting indeed. Few questions to make the debugging faster

1. Can you paste your overtone config file from ~/.overtone/config.clj

 {:os :linux,
 :user-name "Joseph",
 :server :internal,
 :sc-args {},
 :versions-seen #{"v0.10.5" "v0.10.1" "v0.10.6" "v0.10.3" "v0.10.4"}}


2. Can you tell me which jackd version you are using? ` jackd  -V` (im on 1.9.14)

1.9.12

3. Is everything fine when you run the latest supercollider with jack (rule out SC jack module changed)

I am able to successsfully run supercollider with jack and produce sound.

4. Does the latest master from github work (there are some unreleased changes, best is to test with deps.edn instead of leiningen).

Does this mean running overtone from source, and if not, how would I do it? Also, I have tried the above combinations using deps.edn and have received the same results.
I haven't tried running from source, but will investigate that as soon as I get home.

Thanks so much for you assistance.

Joseph

unread,
Apr 7, 2020, 8:48:04 PM4/7/20
to Overtone
Hello,

I started Overtone from the source (master branch) usingdeps.edn, and received much the same response.

If I start jack before starting my program, the output is:

--> Loading Overtone...
SC FFT global init: cosTable initialised.
--> Booting internal SuperCollider server...
JackDriver: client name is 'Overtone'
SC_AudioDriver: sample rate = 44100.000000, driver's block size = 1024
--> Connecting to internal SuperCollider server...
java: ../common/JackGraphManager.cpp:44: void Jack::JackGraphManager::AssertPort (jack_port_id_t): Assertion `port_index < fPortMax' failed.
rlwrap: warning: clojure crashed, killed by SIGABRT (core dumped).
rlwrap itself has not crashed, but for transparency,
it will now kill itself with the same signal


warnings can be silenced by the --no-warnings (-n) option
Aborted (core dumped)

Jack produces the same messages:

many lines of:

JackEngine::XRun: client = Overtone was not finished, state = Triggered
JackAudioDriver::ProcessGraphAsyncMaster: Process error

then

Cannot read socket fd = 25 err = Connection reset by peer
Could not read notification result
ClientNotify fails name = Overtone notification = 18 val1 = 1 val2 = 0
Cannot write socket fd = 25 err = Broken pipe
CheckRes error
Could not write notification
ClientNotify fails name = Overtone notification = 4 val1 = 0 val2 = 0
Cannot write socket fd = 25 err = Broken pipe
CheckRes error
Could not write notification
ClientNotify fails name = Overtone notification = 3 val1 = 0 val2 = 0
Unknown request 4294967295
CheckSize error size = 0 Size() = 12
CheckRead error
19:37:44.768 JACK connection change.
19:37:45.971 XRUN callback (55 skipped).

Hope this helps, and thanks again for any insight.



Hlöðver Sigurðsson

unread,
Apr 8, 2020, 6:45:44 AM4/8/20
to over...@googlegroups.com
I have seen this error before, if that sounds comforting.

I'm pretty sure this is due to changes made to the jack ABI in between versions.

Can you rule that one out, as you see https://github.com/jackaudio/jack2/releases your version of 1.9.12 is pretty old

--
You received this message because you are subscribed to the Google Groups "Overtone" group.
To unsubscribe from this group and stop receiving emails from it, send an email to overtone+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/overtone/8d1defba-313b-43a9-bc5e-9465c3db3df2%40googlegroups.com.

Joseph

unread,
May 11, 2020, 9:58:52 PM5/11/20
to Overtone
Hello,

I am still having trouble getting the lates version of Overtone to run with Clojure 1.10.1.

I updated to Fedora 32, and with this update jack is now at 1.9.14. I am also using a local version of Overtone cloned from the github repo.

In order to simplify things I start a clojure repl and then load Overtone. When I do this it seems that it cannot start Jack, and the system just crashes.

When I follow the above steps without starting jack first, this is the terminal output I see


[joseph@envoy splice]$ clj
Clojure 1.10.1
user=> (use 'overtone.live)

--> Loading Overtone...
SC FFT global init: cosTable initialised.
--> Booting internal SuperCollider server...
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel

jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
could not initialize audio.
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f1a41d65ba7, pid=4609, tid=0x00007f1a2dd5f700
#
# JRE version: OpenJDK Runtime Environment (8.0_242-b08) (build 1.8.0_242-b08)
# Java VM: OpenJDK 64-Bit Server VM (25.242-b08 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libscsynth.so.1+0x63ba7]  World_WaitForQuit+0x7
#
# Core dump written. Default location: /home/joseph/clj/src/splice/core or core.4609
#
# An error report file with more information is saved as:
# /home/joseph/clj/src/splice/hs_err_pid4609.log

--> Connecting to internal SuperCollider server...
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

rlwrap: warning: clojure crashed, killed by SIGABRT (core dumped).
rlwrap itself has not crashed, but for transparency,
it will now kill itself with the same signal


warnings can be silenced by the --no-warnings (-n) option
Aborted (core dumped)
[joseph@envoy splice]$



If I start jack before starting clojure, the terminal output is as follows


[joseph@envoy splice]$ clj
Clojure 1.10.1
user=> (use 'overtone.live)

--> Loading Overtone...
SC FFT global init: cosTable initialised.
--> Booting internal SuperCollider server...
Cannot read socket fd = 103 err = Success
CheckRes error
Could not read result type = 22
Client name = Overtone conflits with another running client
Cannot connect to the server
JackShmReadWritePtr1::~JackShmReadWritePtr1 - Init not done for -1, skipping unlock

JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
could not initialize audio.
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fb49cb72ba7, pid=4765, tid=0x00007fb479803700
#
# JRE version: OpenJDK Runtime Environment (8.0_242-b08) (build 1.8.0_242-b08)
# Java VM: OpenJDK 64-Bit Server VM (25.242-b08 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libscsynth.so.1+0x63ba7]  World_WaitForQuit+0x7
#
# Core dump written. Default location: /home/joseph/clj/src/splice/core or core.4765
#
# An error report file with more information is saved as:
# /home/joseph/clj/src/splice/hs_err_pid4765.log

--> Connecting to internal SuperCollider server...
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

rlwrap: warning: clojure crashed, killed by SIGABRT (core dumped).
rlwrap itself has not crashed, but for transparency,
it will now kill itself with the same signal


warnings can be silenced by the --no-warnings (-n) option
Aborted (core dumped)
[joseph@envoy splice]$


And in the Jack message window I see:

CheckSize error size = 81 Size() = 85
CheckRead error
Unknown request 1919252047
Unknown request 1701736308
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 0
Unknown request 2048
Unknown request 0
Unknown request 4294967040
Unknown request 511
Cannot read socket fd = 24 err = Success


I've tried various things to get past this, but, obviously, I have not been successful.

Any further assistance would be much appreciated.

Joseph

To unsubscribe from this group and stop receiving emails from it, send an email to over...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages