Sorry, I'm an idiot. The real error was when I called put!
I don't understand this error:
INFO: java.lang.NoSuchMethodError: java.util.zip.Checksum.update([B)V
java.lang.NoSuchMethodError: java.util.zip.Checksum.update([B)V
at durable_queue$checksum.invokeStatic (durable_queue.clj:64)
durable_queue$checksum.invokePrim (durable_queue.clj:-1)
durable_queue.TaskSlab.append_to_slab_BANG_ (durable_queue.clj:314)
durable_queue$queues$reify__6549$slab_BANG___6570.invoke
(durable_queue.clj:702)
durable_queue$queues$reify__6549$fn__6575.invoke (durable_queue.clj:719)
durable_queue$queues$reify__6549.put_BANG_ (durable_queue.clj:717)
durable_queue$queues$reify__6549.put_BANG_ (durable_queue.clj:732)
humongorous_nlp.core$cycle_to_database$fn__13673$fn__13693.invoke
(core.clj:665)
humongorous_nlp.core$cycle_to_database$fn__13673.invoke (core.clj:663)
clojure.lang.AFn.run (AFn.java:22)
java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:511)
java.util.concurrent.FutureTask.runAndReset (FutureTask.java:308)
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301
(ScheduledThreadPoolExecutor.java:180)
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run
(ScheduledThreadPoolExecutor.java:294)
java.util.concurrent.ThreadPoolExecutor.runWorker
(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:624)
java.lang.Thread.run (Thread.java:748)
On Wednesday, January 16, 2019 at 1:47:21 PM UTC-5, [email protected]
wrote:
>
> I was away from Clojure for a year and I missed it. I am pleased to be
> back. But I've forgotten certain common errors. I feel like this is
> something I used to know but now I've lost the knowledge.
>
> I'm using Factual's durable-queue to put a step inbetween the import of
> large JSON files, and their writes to the database. This works fine on my
> local MacBook Pro, but when I move to an EC2 instance, I'm instead getting
> time-outs when durable-queue tries to read from the queue.
>
> At start up the app creates a few of these workers, which run for as long
> as the app is running:
>
> (defn worker
> [from-topics-to-persistence-queue current-database-connection]
> (slingshot/try+
> (loop [message (durable/take! from-topics-to-persistence-queue :message
> 60000 :timed-out!)]
> (slingshot/try+
> (log-seq " the message in the work function " message)
> (when (= (type message) durable_queue.Task)
> (advance message current-database-connection))
> (catch Object o
> (log-seq "error in worker function")
> (durable/retry! message)
> (log-seq o)))
> (recur (durable/take! from-topics-to-persistence-queue :message 60000
> :timed-out!)))
> (catch Object o
> (error o)
> (slingshot/throw+ {
> :type worker
> :error o
> :from-topics-to-persistence-queue
> from-topics-to-persistence-queue
> :current-database-connection
> current-database-connection
> }
> ))))
>
> On the EC2 instance, I see in the output:
>
> Jan 16, 2019 6:43:23 PM humongorous-nlp.core invoke
> INFO: the message in the work function
>
> Jan 16, 2019 6:43:23 PM humongorous-nlp.core invoke
> INFO:
>
> Jan 16, 2019 6:43:23 PM humongorous-nlp.core invoke
> INFO: :timed-out!
>
> I'm using an environment var to set the path to the queue:
>
> PATH_TO_DURABLE_QUEUE_S3_TO_DATABASE=/tmp/s3_to_database_queue
>
> I feel like I ran into this problem 2 years ago, but I can't recall the
> solution. Is the problem specific to AWS?
>
> An important clue, I think, is that I'm not getting an error on the put!,
> only on the take! Why would that be?
>
>
> --- lawrence
>
>
>
>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.