Re: Help! - Grinder console sample collection - invalid locale

Calum Fitzgerald <[email protected]> Sat, 18 Apr 2015 13:51:47 +0100
Newsgroups gmane.comp.java.grinder.user
Message-ID <[email protected]>
Hi,

It looks like the roar is in the internationalisation library 'tower' for closure that you are using. Given that it will be dealing with locales when deciding the localisation/translation to use this would seem to be the best place to start. https://github.com/ptaoussanis/tower

It may well be that you don't have a translation pack set up for the locale that you are using. 

It may well be worth pinging the maintainer an email to see if it is a common issue that can be remedied easily.

Cheers
Cal


> On 18 Apr 2015, at 04:26, Darren Ball <[email protected]> wrote:
> 
> Ok - this is sort of driving me crazy...
> 
> My systems are setup fro en_US.UTF-8, locale and env are the same across all systems, but I still get Invalid locale: errors on sample collection.
> I can not decipher why this is happening.  Looking at the stack trace - it seems that clojure is having an issue?
> It does not say what trouble it is having or even the local that it is saying is invalid. 
> 
> Any help is very much appreciated trying to decipher this:
> 
> Stack trace:
> 2015-04-18 03:12:04,104 INFO  console: The Grinder 3.12-SNAPSHOT
> 2015-04-18 03:12:08,092 DEBUG net.grinder.console.web.livedata: (push :process-state) 0
> 2015-04-18 03:12:08,105 DEBUG net.grinder.console.web.livedata: (push :threads) 0
> 2015-04-18 03:12:08,288 DEBUG net.grinder.console.web.livedata: (push :statistics) 0
> 2015-04-18 03:12:08,290 DEBUG net.grinder.console.web.livedata: (push :sample) 0
> 2015-04-18 03:12:08,313 DEBUG net.grinder.console.service.bootstrap_impl: Starting HTTP server at 0.0.0.0:6373
> 2015-04-18 03:12:23,532 DEBUG net.grinder.console.service.app: request :put /properties -> 200 (53.28 ms)
> 2015-04-18 03:12:29,923 INFO  console: Agent i-70cc4286 [Connected]
> 2015-04-18 03:12:30,007 DEBUG net.grinder.console.web.livedata: (push :process-state) 1
> 2015-04-18 03:12:30,010 DEBUG net.grinder.console.web.livedata: (push :threads) 1
> 2015-04-18 03:12:30,986 DEBUG net.grinder.console.web.livedata: (push :process-state) 2
> 2015-04-18 03:12:30,988 DEBUG net.grinder.console.web.livedata: (push :threads) 2
> 2015-04-18 03:12:37,953 DEBUG net.grinder.console.service.app: request :post /files/distribute -> 200 (10.33 ms)
> 2015-04-18 03:12:38,974 DEBUG net.grinder.console.web.livedata: (push :process-state) 3
> 2015-04-18 03:12:38,975 DEBUG net.grinder.console.web.livedata: (push :threads) 3
> 2015-04-18 03:12:51,746 DEBUG net.grinder.console.service.app: request :post /agents/start-workers -> 200 (21.76 ms)
> 2015-04-18 03:13:01,427 INFO  console: Agent i-70cc4286 [Connected] { Worker i-70cc4286-0 [Ready] }
> 2015-04-18 03:13:01,502 DEBUG net.grinder.console.web.livedata: (push :process-state) 4
> 2015-04-18 03:13:01,503 DEBUG net.grinder.console.web.livedata: (push :threads) 4
> 2015-04-18 03:13:03,926 INFO  console: Agent i-70cc4286 [Connected]
> 2015-04-18 03:13:04,002 DEBUG net.grinder.console.web.livedata: (push :process-state) 5
> 2015-04-18 03:13:04,003 DEBUG net.grinder.console.web.livedata: (push :threads) 5
> 2015-04-18 03:13:12,606 DEBUG net.grinder.console.web.livedata: (push :statistics) 1
> 2015-04-18 03:13:12,608 DEBUG net.grinder.console.web.livedata: (push :sample) 1
> 2015-04-18 03:13:12,945 INFO  console: Agent i-70cc4286 [Connected] { Worker i-70cc4286-0 [Running (1/1 thread)] }
> 2015-04-18 03:13:12,983 INFO  console: Collecting samples: 1
> Exception in thread "Timer-0" java.lang.Exception: Invalid locale: 
> 	at taoensso.tower$fn__1103.invoke(tower.clj:38)
> 	at clojure.lang.AFn.applyToHelper(AFn.java:161)
> 	at clojure.lang.AFn.applyTo(AFn.java:151)
> 	at clojure.core$apply.invoke(core.clj:617)
> 	at clojure.core$memoize$fn__5049.doInvoke(core.clj:5735)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at taoensso.tower$fmt_msg.doInvoke(tower.clj:177)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:142)
> 	at clojure.core$apply.invoke(core.clj:619)
> 	at taoensso.tower$format_msg.doInvoke(tower.clj:542)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:137)
> 	at clojure.core$apply.invoke(core.clj:619)
> 	at net.grinder.translation.translate$t.doInvoke(translate.clj:52)
> 	at clojure.lang.RestFn.invoke(RestFn.java:439)
> 	at net.grinder.console.service.web$eval4444$fn__4445.invoke(web.clj:69)
> 	at clojure.lang.MultiFn.invoke(MultiFn.java:231)
> 	at net.grinder.console.service.web$render_process_table$iter__4482__4486$fn__4487$iter__4504__4508$fn__4509.invoke(web.clj:109)
> 	at clojure.lang.LazySeq.sval(LazySeq.java:42)
> 	at clojure.lang.LazySeq.seq(LazySeq.java:60)
> 	at clojure.lang.RT.seq(RT.java:484)
> 	at clojure.core$seq.invoke(core.clj:133)
> 	at clojure.core$apply.invoke(core.clj:617)
> 	at net.grinder.console.service.web$render_process_table$iter__4482__4486$fn__4487.invoke(web.clj:105)
> 	at clojure.lang.LazySeq.sval(LazySeq.java:42)
> 	at clojure.lang.LazySeq.seq(LazySeq.java:60)
> 	at clojure.lang.RT.seq(RT.java:484)
> 	at clojure.core$seq.invoke(core.clj:133)
> 	at clojure.core$apply.invoke(core.clj:617)
> 	at net.grinder.console.service.web$render_process_table.invoke(web.clj:90)
> 	at net.grinder.console.service.web$create_app$push_process_data__4912.invoke(web.clj:352)
> 	at net.grinder.console.model.processes$add_listener$fn__2111.invoke(processes.clj:116)
> 	at clojure.lang.ARef.notifyWatches(ARef.java:98)
> 	at clojure.lang.Atom.reset(Atom.java:101)
> 	at clojure.core$reset_BANG_.invoke(core.clj:2178)
> 	at net.grinder.console.model.processes$initialise$reify__2016.update(processes.clj:48)
> 	at net.grinder.console.communication.ProcessStatusImplementation$3.inform(ProcessStatusImplementation.java:157)
> 	at net.grinder.console.communication.ProcessStatusImplementation$3.inform(ProcessStatusImplementation.java:155)
> 	at net.grinder.util.ListenerSupport.apply(ListenerSupport.java:104)
> 	at net.grinder.console.communication.ProcessStatusImplementation.update(ProcessStatusImplementation.java:154)
> 	at net.grinder.console.communication.ProcessStatusImplementation.access$000(ProcessStatusImplementation.java:51)
> 	at net.grinder.console.communication.ProcessStatusImplementation$1.run(ProcessStatusImplementation.java:103)
> 	at java.util.TimerThread.mainLoop(Timer.java:555)
> 	at java.util.TimerThread.run(Timer.java:505)
> 2015-04-18 03:13:13,107 DEBUG net.grinder.console.web.livedata: (push :statistics) 2
> 2015-04-18 03:13:13,108 DEBUG net.grinder.console.web.livedata: (push :sample) 2
> ^C2015-04-18 03:13:41,966 INFO  console: missing translation: {0}
> 
> 
> There are other times this works for a period and then croaks, as in this, where it does not happen until 90+ samples in.
> 
> 2015-04-18 02:46:11,878 DEBUG net.grinder.console.web.livedata: (push :statistics) 86
> 2015-04-18 02:46:11,879 DEBUG net.grinder.console.web.livedata: (push :sample) 86
> 2015-04-18 02:46:12,880 INFO  console: Collecting samples: 86
> 2015-04-18 02:46:12,995 DEBUG net.grinder.console.web.livedata: (push :statistics) 87
> 2015-04-18 02:46:12,996 DEBUG net.grinder.console.web.livedata: (push :sample) 87
> 2015-04-18 02:46:13,996 INFO  console: Collecting samples: 87
> 2015-04-18 02:46:14,114 DEBUG net.grinder.console.web.livedata: (push :statistics) 88
> 2015-04-18 02:46:14,116 DEBUG net.grinder.console.web.livedata: (push :sample) 88
> 2015-04-18 02:46:15,118 INFO  console: Collecting samples: 88
> 2015-04-18 02:46:15,238 DEBUG net.grinder.console.web.livedata: (push :statistics) 89
> 2015-04-18 02:46:15,239 DEBUG net.grinder.console.web.livedata: (push :sample) 89
> 2015-04-18 02:46:16,240 INFO  console: Collecting samples: 89
> 2015-04-18 02:46:16,357 DEBUG net.grinder.console.web.livedata: (push :statistics) 90
> 2015-04-18 02:46:16,358 DEBUG net.grinder.console.web.livedata: (push :sample) 90
> 2015-04-18 02:46:17,358 INFO  console: Collecting samples: 90
> 2015-04-18 02:46:17,475 DEBUG net.grinder.console.web.livedata: (push :statistics) 91
> 2015-04-18 02:46:17,476 DEBUG net.grinder.console.web.livedata: (push :sample) 91
> 2015-04-18 02:46:18,477 INFO  console: Collecting samples: 91
> 2015-04-18 02:46:18,598 DEBUG net.grinder.console.web.livedata: (push :statistics) 92
> 2015-04-18 02:46:18,599 DEBUG net.grinder.console.web.livedata: (push :sample) 92
> 2015-04-18 02:46:18,638 INFO  console: Agent i-70cc4286 [Connected] { Worker i-70cc4286-1 [Running (1/1 thread)] }
> Exception in thread "Timer-0" java.lang.Exception: Invalid locale: 
> 	at taoensso.tower$fn__1103.invoke(tower.clj:38)
> 	at clojure.lang.AFn.applyToHelper(AFn.java:161)
> 	at clojure.lang.AFn.applyTo(AFn.java:151)
> 	at clojure.core$apply.invoke(core.clj:617)
> 	at clojure.core$memoize$fn__5049.doInvoke(core.clj:5735)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 
> 
> Environment (both nodes)
> [grinder@grinderconsole ~]$ env | grep UTF
> LC_ALL=en_US.UTF-8
> LANG=en_US.UTF-8
> LANGUAGE=en_US.UTF-8
> [grinder@grinderconsole ~]$ locale
> LANG=en_US.UTF-8
> LC_CTYPE="en_US.UTF-8"
> LC_NUMERIC="en_US.UTF-8"
> LC_TIME="en_US.UTF-8"
> LC_COLLATE="en_US.UTF-8"
> LC_MONETARY="en_US.UTF-8"
> LC_MESSAGES="en_US.UTF-8"
> LC_PAPER="en_US.UTF-8"
> LC_NAME="en_US.UTF-8"
> LC_ADDRESS="en_US.UTF-8"
> LC_TELEPHONE="en_US.UTF-8"
> LC_MEASUREMENT="en_US.UTF-8"
> LC_IDENTIFICATION="en_US.UTF-8"
> LC_ALL=en_US.UTF-8
> 
> 
> [grinder@grinderagent1 ~]$ env | grep UTF
> LC_ALL=en_US.UTF-8
> LANG=en_US.UTF-8
> LANGUAGE=en_US.UTF-8
> [grinder@grinderagent1 ~]$ locale
> LANG=en_US.UTF-8
> LC_CTYPE="en_US.UTF-8"
> LC_NUMERIC="en_US.UTF-8"
> LC_TIME="en_US.UTF-8"
> LC_COLLATE="en_US.UTF-8"
> LC_MONETARY="en_US.UTF-8"
> LC_MESSAGES="en_US.UTF-8"
> LC_PAPER="en_US.UTF-8"
> LC_NAME="en_US.UTF-8"
> LC_ADDRESS="en_US.UTF-8"
> LC_TELEPHONE="en_US.UTF-8"
> LC_MEASUREMENT="en_US.UTF-8"
> LC_IDENTIFICATION="en_US.UTF-8"
> LC_ALL=en_US.UTF-8
> 
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> grinder-use mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/grinder-use

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF

_______________________________________________
grinder-use mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/grinder-use