Hi Brandon,
I've made a thread dump at some point shortly after KeyIndexClient starts to
eat CPU cycles like there's no tomorrow:
Updating freegle-0
/mp3/Smoke_City/Underwater_Love.mp3
Updating freegle-1
SSK@AKAm5kjMmiQP~2e74~FE7iBgfg/mp3/monty python/every sperm is sacred
Updating freegle-2
gaga
Updating freegle-3
Full thread dump:
"tcp/127.0.0.1:19114 ConnectionHandler" prio=5 tid=0x8af428 nid=0x5b4
runnable [
0x8fdf000..0x8fdfdbc]
at java.net.SocketInputStream.socketRead(Native Method)
at java.net.SocketInputStream.read(Unknown Source)
at Freenet.crypt.CipherInputStream.read(CipherInputStream.java)
at java.io.FilterInputStream.read(Unknown Source)
at java.io.PushbackInputStream.read(Unknown Source)
at Freenet.ConnectionHandler.run(ConnectionHandler.java)
at java.lang.Thread.run(Unknown Source)
"Request: freenet:KSK@freegle-3" prio=5 tid=0x8afb60 nid=0x900 waiting on
monito
r [0x8f9f000..0x8f9fdbc]
at java.lang.Object.wait(Native Method)
at
Freenet.client.ClientMessageHandler.getNextReply(ClientMessageHandler
.java)
at Freenet.client.Client$BInstance.getNextReply(Client.java)
at Freenet.client.Client$BInstance.getQueryResponse(Client.java)
at Freenet.client.Client$BRequestInstance.getResponse(Client.java)
at Freenet.client.Client$BRequestInstance.doit(Client.java)
at Freenet.client.Client$BInstance.prepare(Client.java)
at Freenet.client.Client$BRequestInstance.prepare(Client.java)
at Freenet.client.Client$BInstance.run(Client.java)
at java.lang.Thread.run(Unknown Source)
"Freenet Core connection listener on 3935" daemon prio=5 tid=0x89eaf30
nid=0x89c
runnable [0x8f1f000..0x8f1fdbc]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(Unknown Source)
at java.net.ServerSocket.implAccept(Unknown Source)
at java.net.ServerSocket.accept(Unknown Source)
at Freenet.transport.tcpListener.accept(tcpListener.java)
at Freenet.Core$ConnectionAcceptor.run(Core.java)
"Ticker" daemon prio=5 tid=0x89eaa40 nid=0x8fc waiting on monitor
[0x8edf000..0x
8edfdbc]
at java.lang.Thread.sleep(Native Method)
at Freenet.Ticker.run(Ticker.java)
"ThreadPool" daemon prio=5 tid=0x89ead80 nid=0x7a8 waiting on monitor
[0x8e9f000
..0x8e9fdbc]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Unknown Source)
at Freenet.support.BlockingQueue.dequeue(BlockingQueue.java)
at Freenet.thread.ThreadPool.run(ThreadPool.java)
"Diffie-Helman-Precalc" daemon prio=2 tid=0x8a2fe50 nid=0x83c waiting on
monitor
[0x8e5f000..0x8e5fdbc]
at java.lang.Thread.sleep(Native Method)
at
Freenet.crypt.DiffieHellman$PrecalcBufferFill.run(DiffieHellman.java)
"Freenet Core connection listener on 3934" daemon prio=5 tid=0x89e6d28
nid=0x6e8
runnable [0x8e1f000..0x8e1fdbc]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(Unknown Source)
at java.net.ServerSocket.implAccept(Unknown Source)
at java.net.ServerSocket.accept(Unknown Source)
at Freenet.transport.tcpListener.accept(tcpListener.java)
at Freenet.Core$ConnectionAcceptor.run(Core.java)
"Ticker" daemon prio=5 tid=0x8aaca10 nid=0x618 runnable
[0x8ddf000..0x8ddfdbc]
at java.lang.Thread.sleep(Native Method)
at Freenet.Ticker.run(Ticker.java)
"Diffie-Helman-Precalc" daemon prio=2 tid=0x89f1668 nid=0x67c waiting on
monitor
[0x8d9f000..0x8d9fdbc]
at java.lang.Thread.sleep(Native Method)
at
Freenet.crypt.DiffieHellman$PrecalcBufferFill.run(DiffieHellman.java)
"Signal Dispatcher" daemon prio=10 tid=0x8004e8 nid=0x3c8 waiting on monitor
[0.
.0]
"Finalizer" daemon prio=9 tid=0x7fd068 nid=0x894 waiting on monitor
[0x8c4f000..
0x8c4fdbc]
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
"Reference Handler" daemon prio=10 tid=0x7fbc78 nid=0x788 waiting on monitor
[0x
8c0f000..0x8c0fdbc]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Unknown Source)
at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
"main" prio=5 tid=0x234378 nid=0x6b4 waiting on monitor [0x6f000..0x6fc34]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Unknown Source)
at
Freenet.client.TransferStartedListener.waitEvent(TransferStartedListe
ner.java)
at
Freenet.client.SimplifiedClient.fillBuckets(SimplifiedClient.java)
at Freenet.client.SimplifiedClient.getData(SimplifiedClient.java)
at Freenet.client.KeyIndexClient.getIndex(KeyIndexClient.java)
at Freenet.client.KeyIndexClient.main(KeyIndexClient.java)
"VM Thread" prio=5 tid=0x23ff38 nid=0x800 runnable
"VM Periodic Task Thread" prio=10 tid=0x7ffbd0 nid=0x8cc waiting on monitor
Maybe that gives you a clue... all threads seem to wait, I have no idea
which one's running wild...
KeyIndexClient actually finishes its job and returns to the command line.
But it clearly should idle while waiting for incoming data.
-Stefan
----- Original Message -----
From: "Brandon" <[EMAIL PROTECTED]>
To: "Jan-Thomas Czornack" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Tuesday, April 17, 2001 2:14 AM
Subject: RE: [freenet-support] KeyIndexClient
>
> > java Freenet.client.KeyIndexClient -list test
>
> Well, I do this command and it takes about 4 minutes (listing an index is
> slow due to the necessity of timeouts to find the end) and comes up with
> no results.
>
> But it certainly doesn't stall (it even prints a status bar as it goes).
>
> I'm sure it's one of those things where I made some assumptions which are
> true on my machine and not on yours, but I'm at a loss as to what they
> might be.
>
>
>
> _______________________________________________
> Support mailing list
> [EMAIL PROTECTED]
> http://lists.freenetproject.org/mailman/listinfo/support
_______________________________________________
Support mailing list
[EMAIL PROTECTED]
http://lists.freenetproject.org/mailman/listinfo/support