On Sat, Apr 07, 2001 at 07:20:01PM -0500, Brandon wrote: > There's some bug in the new Client restructuring as it has broken by > code. It's also possible that it was broken before and changing my code > has just revealed its brokenness. However, since the stack trace > penetrates into FNPClient and I haven't changed > SimplifiedClient.dumpBuckets() lately, I think it's most likely a problem > with FNPClient. At the very least it should return a more informative > exception. > > java.lang.NullPointerException > at java.io.SequenceInputStream.nextStream(SequenceInputStream.java:98) > at java.io.SequenceInputStream.<init>(SequenceInputStream.java:80) > at Freenet.client.FNPClient$BInsertInstance.<init>(FNPClient.java:389) > at Freenet.client.FNPClient.obtainClient(FNPClient.java:44) > at > Freenet.client.SimplifiedClient.dumpBuckets(SimplifiedClient.java:356) > at > Freenet.client.SimplifiedClient.dumpBuckets(SimplifiedClient.java:321) > at Freenet.client.SimplifiedClient.put(SimplifiedClient.java:152) > at Freenet.client.SimplifiedClient.put(SimplifiedClient.java:137) > at > Freenet.contrib.xmlrpc.LocalStreamingClient.endInsert(LocalStreamingClient.java:130) > at > Freenet.contrib.xmlrpc.LocalStreamingClient$Pump.run(LocalStreamingClient.java:224)
Actually, this was unrelated to the restructuring. It's a result of my fixing Fred to compute the encryption key for CHKs from the whole data stream instead of the non-metadata part only. You'll get this if you attempt to pass a NullBucket in for the metadata Bucket, which it seems like you're doing in LocalStreamingClient. The best way to fix this, I think, is to fix NullBucket so that it does return an input stream instead of null. This input stream would of course be length 0, giving an EOF on any read. The work around is to just create a new empty FileBucket and pass that in. -- # tavin cole
