Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 9806 - gentoo-stats --update fails with java.util.NoSuchElementException
Summary: gentoo-stats --update fails with java.util.NoSuchElementException
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: PPC Linux
: High normal (vote)
Assignee: Maik Schreiber
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-10-27 23:21 UTC by Rajiv Aaron Manglani (RETIRED)
Modified: 2006-02-04 06:03 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rajiv Aaron Manglani (RETIRED) gentoo-dev 2002-10-27 23:21:42 UTC
trying to run gentoo-stats:

mr-computer /etc # gentoo-stats --update
<html><head><title>Apache Tomcat/4.0.6 - Error
report</title><STYLE><!--H1{font-family : sans-serif,Arial,Tahoma;color :
white;background-color : #0086b2;} BODY{font-family :
sans-serif,Arial,Tahoma;color : black;background-color : white;} B{color :
white;background-color : #0086b2;} HR{color : #0086b2;} --></STYLE>
</head><body><h1>Apache Tomcat/4.0.6 - HTTP Status 500 - Internal Server
Error</h1><HR size="1" noshade><p><b>type</b> Exception
report</p><p><b>message</b> <u>Internal Server
Error</u></p><p><b>description</b> <u>The server encountered an internal error
(Internal Server Error) that prevented it from fulfilling this
request.</u></p><p><b>exception</b> <pre>java.util.NoSuchElementException
        at java.util.StringTokenizer.nextToken(StringTokenizer.java:232)
        at org.gentoo.stats.StatsServlet.processCPUs(StatsServlet.java:477)
        at org.gentoo.stats.StatsServlet.doPost(StatsServlet.java:160)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:458)
        at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:551)
        at java.lang.Thread.run(Thread.java:536)
</pre></p><HR size="1" noshade></body></html>


fyi:

*  app-admin/gentoo-stats
      Latest version available: 0.4
      Latest version installed: 0.4

mr-computer /etc # cat /proc/cpuinfo 
cpu             : 603ev
clock           : 200MHz
revision        : 2.1 (pvr 0007 0201)
bogomips        : 133.12
machine         : Power Macintosh
motherboard     : AAPL,e407 MacRISC
detected as     : 35 (Alchemy)
pmac flags      : 00000000
memory          : 72MB
pmac-generation : OldWorld
Comment 1 Todd Heim (RETIRED) gentoo-dev 2002-10-28 17:33:24 UTC
having the same error, on another oldworld ppc.

[root@tnt /]# cat /proc/cpuinfo
cpu             : 604
clock           : 150MHz
revision        : 3.5 (pvr 0004 0305)
bogomips        : 299.82
machine         : Power Macintosh
motherboard     : AAPL,7500 MacRISC
detected as     : 16 (PowerMac 7500)
pmac flags      : 00000000
memory          : 48MB
pmac-generation : OldWorld
Comment 2 Veit Waltemath 2002-10-29 14:04:58 UTC
... the same for me.

root@muffin veitw # cat /proc/cpuinfo 
cpu             : 740/750
temperature     : 34-36 C (uncalibrated)
clock           : 350MHz
revision        : 2.2 (pvr 0008 0202)
bogomips        : 697.95
machine         : PowerMac1,1
motherboard     : PowerMac1,1 MacRISC Power Macintosh
detected as     : 66 (Blue&White G3)
pmac flags      : 00000000
L2 cache        : 1024K unified
memory          : 320MB
pmac-generation : NewWorld
Comment 3 Graham Forest 2002-10-30 03:10:40 UTC
Ditto. Exact same error on my iBook:

stalin root # cat /proc/cpuinfo 
cpu             : 750FX
temperature     : 48 C (uncalibrated)
clock           : 700MHz
revision        : 1.18 (pvr 7000 0112)
bogomips        : 1389.36
machine         : PowerBook4,3
motherboard     : PowerBook4,3 MacRISC2 MacRISC Power Macintosh
detected as     : 257 (iBook 2 rev. 2)
pmac flags      : 00000003
L2 cache        : 512K unified
memory          : 256MB
pmac-generation : NewWorld


Whereas on my 9600, it doesn't error, but it never gets counted:

lenin root # cat /proc/cpuinfo
cpu             : 604e
clock           : 210MHz
revision        : 2.2 (pvr 0009 0202)
bogomips        : 399.76
machine         : Power Macintosh
motherboard     : AAPL,9500 MacRISC
detected as     : 16 (PowerMac 9500/9600)
pmac flags      : 00000000
L2 cache        : 512K unified
memory          : 160MB
pmac-generation : OldWorld


Something is obviously (still) wrong with the PPC side of this. I didn't see
much (any) progress on this, so I hacked a copy of gentoo-stats to just dump
what it normally sends to the server (minus the ID). Both this hacked version,
and the output from three nonworking machines is now at
http://www.pocketninja.com/gentoo/gentoo-stats-output/ . It's an ugly hack, but
hopefully this issue will be over before it's worth writing something that gets
really into it. If anyone feels like adding to the list, broken or not, just run
the script (gentoo-stats-debug), and mail me the output, and I'll add it. Maybe
with enough of these things, the problem will become obvious.

It might just be me, but it seems like it would make more sense to just send the
entire /proc/cpuinfo file to the server, and have server-side scripts parse it.
That way, if some value ends up empty after the parsing routine, it can be
logged/reported to the owner of the server, fixed, and picked up the next time
the user --update's. That would also mean that happy little Gentoo users could
avoid having to report bugs, and their computers could show up on gentoo-stats
(other than the information parsed out of /proc/cpuinfo).

Another interesting morsel of goodness can be found at
http://www.deater.net/weave/vmwprod/linux_logo/test_proc-08Aug2002.tar.gz . It's
an archive of quite a few /proc/cpuinfo files, just about everything needed to
make this work right with all current machines (and antiques, too).
Comment 4 Maik Schreiber 2002-10-30 04:45:34 UTC
I have fixed a bug in the server-side code which I believe corrects this
problem. Please try updating your stats again and let me know.
Comment 5 Rajiv Aaron Manglani (RETIRED) gentoo-dev 2002-10-30 10:55:07 UTC
i'm still getting the same error:

java.util.NoSuchElementException
        at java.util.StringTokenizer.nextToken(StringTokenizer.java:232)
        at org.gentoo.stats.StatsServlet.processCPUs(StatsServlet.java:477)
        at org.gentoo.stats.StatsServlet.doPost(StatsServlet.java:160)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
etc...

is the code for the server public?
Comment 6 Todd Heim (RETIRED) gentoo-dev 2002-10-31 08:33:46 UTC
Still getting the same errors on both my powerbook (below) and 7500 (submitted
earlier).

root@pdq # cat /proc/cpuinfo
cpu             : 740/750
temperature     : 61 C (uncalibrated)
clock           : 450MHz
revision        : 2.2 (pvr 0008 0202)
bogomips        : 599.65
machine         : PowerBook
motherboard     : AAPL,PowerBook1998 MacRISC
L2 cache        : 1024K unified pipelined-syncro-burst
memory          : 128MB
pmac-generation : OldWorld
Comment 7 Maik Schreiber 2002-10-31 13:57:32 UTC
It seems I failed to properly copy the new StatsServlet.class file onto the
server. That is to say, line 477 is empty in my code now.

Please try again, it should work now.
Comment 8 Todd Heim (RETIRED) gentoo-dev 2002-10-31 16:07:17 UTC
Looks like it's fixed.

[root@tnt /home/heim]# gentoo-stats --update
OK
[root@tnt /home/heim]#
Comment 9 Rajiv Aaron Manglani (RETIRED) gentoo-dev 2002-10-31 16:11:30 UTC
works for my machine as well. thanks!