Fork me on GitHub
#core-async
<
2016-10-07
>
jsa-aerial01:10:13

I'm guessing there may be a fair amount of differences so I don't know if anyone could give a synopsis of changes between 0.1.346.0-17112a-alpha and 0.2.391 (which I think is latest) which would have affected simple buffered channels? Nothing fancy being used, blocking writes, non blocking reads (in go block). Behavior seems to be that the reads no longer read - this backs up to the writers blocking and processes stalling.

jsa-aerial01:10:25

Hmmmm, looking this over a bit I'm suspicious of this: Mar 30, 2015 update to tools.analyzer.jvm 0.6.6 - that looks like something that could change generated code (go expansion) and so behavior.

hiredman05:10:26

try setting the system property clojure.core.async.pool-size to 42 at start up

hiredman05:10:52

a few months ago the default threadpool size was shrunk from 42 to 8 (don't ask me why), my guess is you have blocking actions running on the threadpool which is preventing reads from running

hiredman05:10:11

if that is the case you should stop doing that

jsa-aerial16:10:46

@hiredman Is this thread pool only used from inside a go block?, i.e., it's the parking thread pool? If so, I don't see any blocking actions in there - only parking actions, or am I misunderstanding you? Thanks!

hiredman16:10:38

that is what I meant

jsa-aerial16:10:54

Hmmmm, I will need to triple check that. I guess I should first try setting pool-size to 42 in the latest version to see if that "fixes" it. If so, then you must be correct and I just can't see where the block is yet...