On Saturday 01 August 2009 16:41:49 Matthew Toseland wrote:
> I'm not going to summarise your changes in detail, basically this is inline
> images and pushing the useralerts.
>
> SPECIFIC COMMITS:
> 7a08229da7d564c2832c867e126830ec7c7b36c9
> - doing it the right way, good
> - appending the script at the end is okay but it must be in the right charset.
> - it might be easier to merge this into the tag replacer callback, have it
> written just before </html>
> - ParsedTag.getAttributesAsMap : should be more robust
> - TagReplacerCallback : shouldn't this be an interface?
> - TagReplacerCallback.processTag : use the relative URI resolution code from
> GenericReadFilterCallback
>
>
> 7d390d53e691237f2c2aa5e1fc45ba6b4f6eb243
> - logwriteback : potential for abuse by e.g. malicious websites? Can we
> authenticate it?
> - can't we figure out the actual font size and render once rather than
> rendering into a buffer and then shrinking or expanding it?
>
> 614cd1ee326f02467bf37d9bd216fb334f1d1818
> - ImageElement.dispose() : is it safe to run() here, w.r.t. infinite
> recursion etc? should we schedule a job instead?
>
> 4313301cd6885833f361e65aba7036d79b0e5c47
> - ImageCreatorToadlet last modified handling: huh?! there is only one image?!
> - where is disableContentEscaping called exactly? check that it is safe to do
> so e.g. we escape urls, content etc.
> - in fact, we should use addChild("%", <content>) ... why is a separate
> mechanism needed?
>
> 6e4a31b83cc3596ac2c27a684a66c52792751475
> - application/xml+xhtml ??? any other html types?
>
> TESTING RESULTS:
> Pushing cancelled message while waiting for the node to start up. I didn't
> think there was any pushing on this page?
>
> Deadlock:
>
> INFO | jvm 1 | 2009/08/01 16:32:32 | Java stack information for the
> threads listed above:
> INFO | jvm 1 | 2009/08/01 16:32:32 |
> ===================================================
> INFO | jvm 1 | 2009/08/01 16:32:32 | "HTTP socket handler at
> 2032530416(143)":
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.updateableelements.PushDataManager.keepAliveReceived(PushDataManager.java:175)
> INFO | jvm 1 | 2009/08/01 16:32:32 | - waiting to lock
> <0x00007f2464a7d9e0> (a
> freenet.clients.http.updateableelements.PushDataManager)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.PushKeepaliveToadlet.handleGet(PushKeepaliveToadlet.java:31)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.ToadletContextImpl.handle(ToadletContextImpl.java:380)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.SimpleToadletServer$SocketHandler.run(SimpleToadletServer.java:732)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.support.PooledExecutor$MyThread.run(PooledExecutor.java:224)
> INFO | jvm 1 | 2009/08/01 16:32:32 | "HTTP socket handler at
> 826873157(27)":
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.useralerts.UserAlertManager.getAlerts(UserAlertManager.java:172)
> INFO | jvm 1 | 2009/08/01 16:32:32 | - waiting to lock
> <0x00007f2464776a78> (a java.util.TreeSet)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.updateableelements.ShortAlertElement.updateState(ShortAlertElement.java:63)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.updateableelements.PushDataManager.getRenderedElement(PushDataManager.java:120)
> INFO | jvm 1 | 2009/08/01 16:32:32 | - locked <0x00007f2464a7d9e0>
> (a freenet.clients.http.updateableelements.PushDataManager)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.PushDataToadlet.handleGet(PushDataToadlet.java:38)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.ToadletContextImpl.handle(ToadletContextImpl.java:380)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.SimpleToadletServer$SocketHandler.run(SimpleToadletServer.java:732)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.support.PooledExecutor$MyThread.run(PooledExecutor.java:224)
> INFO | jvm 1 | 2009/08/01 16:32:32 | "WrapperListener_start_runner":
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.updateableelements.PushDataManager.updateElement(PushDataManager.java:53)
> INFO | jvm 1 | 2009/08/01 16:32:32 | - waiting to lock
> <0x00007f2464a7d9e0> (a
> freenet.clients.http.updateableelements.PushDataManager)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.clients.http.updateableelements.ShortAlertElement$1.alertsChanged(ShortAlertElement.java:32)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.useralerts.UserAlertManager.notifyListeners(UserAlertManager.java:93)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.useralerts.UserAlertManager.register(UserAlertManager.java:54)
> INFO | jvm 1 | 2009/08/01 16:32:32 | - locked <0x00007f2464776a78>
> (a java.util.TreeSet)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.DarknetPeerNode.handleFproxyN2NTM(DarknetPeerNode.java:1448)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.Node.handleFproxyNodeToNodeTextMessageSimpleFieldSet(Node.java:4856)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.Node.handleNodeToNodeTextMessageSimpleFieldSet(Node.java:4847)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.DarknetPeerNode.parseExtraPeerData(DarknetPeerNode.java:473)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.DarknetPeerNode.readExtraPeerDataFile(DarknetPeerNode.java:452)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.DarknetPeerNode.readExtraPeerData(DarknetPeerNode.java:378)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.PeerManager.readExtraPeerData(PeerManager.java:1282)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.Node.start(Node.java:3508)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> freenet.node.NodeStarter.start(NodeStarter.java:159)
> INFO | jvm 1 | 2009/08/01 16:32:32 | at
> org.tanukisoftware.wrapper.WrapperManager$11.run(WrapperManager.java:2979)
> INFO | jvm 1 | 2009/08/01 16:32:32 |
> INFO | jvm 1 | 2009/08/01 16:32:32 | Found 1 deadlock.
>
> Also, NPEs in wrapper.log:
>
> INFO | jvm 1 | 2009/08/01 16:35:55 | java.lang.NullPointerException
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.node.fcp.ClientGet.onFailure(ClientGet.java:608)
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.node.fcp.ClientGet.start(ClientGet.java:337)
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.node.fcp.FCPConnectionHandler.startClientGet(FCPConnectionHandler.java:342)
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.node.fcp.ClientGetMessage.run(ClientGetMessage.java:228)
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.node.fcp.FCPConnectionInputHandler.realRun(FCPConnectionInputHandler.java:140)
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.node.fcp.FCPConnectionInputHandler.run(FCPConnectionInputHandler.java:49)
> INFO | jvm 1 | 2009/08/01 16:35:55 | at
> freenet.support.PooledExecutor$MyThread.run(PooledExecutor.java:224)
> INFO | jvm 1 | 2009/08/01 16:36:05 | java.lang.NullPointerException
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.node.fcp.ClientGet.onFailure(ClientGet.java:608)
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.node.fcp.ClientGet.start(ClientGet.java:337)
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.node.fcp.FCPConnectionHandler.startClientGet(FCPConnectionHandler.java:342)
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.node.fcp.ClientGetMessage.run(ClientGetMessage.java:228)
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.node.fcp.FCPConnectionInputHandler.realRun(FCPConnectionInputHandler.java:140)
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.node.fcp.FCPConnectionInputHandler.run(FCPConnectionInputHandler.java:49)
> INFO | jvm 1 | 2009/08/01 16:36:05 | at
> freenet.support.PooledExecutor$MyThread.run(PooledExecutor.java:224)
>
> Also, after restarting, I get a pushing cancelled message while on the
> progress bar page prior to loading the activelink index. I get
> FetchException's for new URIs logged to wrapper.log, and the load doesn't
> make any progress in 2 minutes plus even with shift+reload. The deadlock is
> not visible.
>
> Please let me know when these various issues are fixed! Thanks.
>
ec06eb0deddb93937594892ba99a2096da7c1266
- MessageManager.onUpdate - what does this do? anchor=null => dismissed?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 835 bytes
Desc: This is a digitally signed message part.
URL:
<https://emu.freenetproject.org/pipermail/devl/attachments/20090801/e9383be1/attachment.pgp>