> Is the problem possibly a difference between your 
> compilation environment and your deploy env?

This seems to be proven by the fact that upgrading Java on the EC2 instance 
fixed the problem. 



On Wednesday, January 16, 2019 at 3:49:41 PM UTC-5, Chris Nuernberger wrote:
>
> Are you using aot?
>
> We have used that durable queue with 1.8.  In fact, we have a 
> compatibility later that allows you to move from the durable queue to an 
> Aws queue:
> (mostly undocumented)
>
> https://github.com/techascent/tech.queue
>
> Is the problem possibly a difference between your compilation environment 
> and your deploy env?
>
>
>
> On Wed, Jan 16, 2019, 1:29 PM <lawrence...@gmail.com <javascript:> wrote:
>
>> So, I upgraded to Java 11, and now everything works. So I guess this was 
>> a version conflict. 
>>
>> Just curious, but is there a way for Factual to make durable-queue to 
>> tell Leiningen that Java 11 is necessary? 
>>
>>
>>
>> On Wednesday, January 16, 2019 at 3:17:49 PM UTC-5, lawrence...@gmail.com 
>> wrote:
>>>
>>> On the new EC2 instance, running Ubuntu:
>>>
>>> java -version
>>> openjdk version "1.8.0_191"
>>> OpenJDK Runtime Environment (build 
>>> 1.8.0_191-8u191-b12-0ubuntu0.18.04.1-b12)
>>> OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
>>>
>>> Is it possible this version does not have the checksum signature that 
>>> durable-queue is looking for? 
>>>
>>> I'm thinking this is some kind of version problem. 
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Wednesday, January 16, 2019 at 2:50:14 PM UTC-5, 
>>> lawrence...@gmail.com wrote:
>>>>
>>>> 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, 
>>>> lawrence...@gmail.com 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 clo...@googlegroups.com 
>> <javascript:>
>> Note that posts from new members are moderated - please be patient with 
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+u...@googlegroups.com <javascript:>
>> 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 clojure+u...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
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 clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to