From j16sdiz+freenet at gmail.com Thu May 1 05:29:10 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Thu, 1 May 2008 13:29:10 +0800 Subject: [freenet-dev] [freenet-cvs] r19567 - trunk/freenet/src/freenet/store In-Reply-To: <200804302150.18044.toad@amphibian.dyndns.org> References: <20080426035734.913FE47B336@freenetproject.org> <200804301935.02525.toad@amphibian.dyndns.org> <200804302150.18044.toad@amphibian.dyndns.org> Message-ID: On Thu, May 1, 2008 at 4:50 AM, Matthew Toseland wrote: > On Wednesday 30 April 2008 19:34, Matthew Toseland wrote: > > On Saturday 26 April 2008 04:57, j16sdiz at freenetproject.org wrote: > > > Author: j16sdiz > > > Date: 2008-04-26 03:57:34 +0000 (Sat, 26 Apr 2008) > > > New Revision: 19567 > > > > > > Modified: > > > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > > Log: > > > use FileChannel.read()/write() in BDBFS > > > > > All good stuff, however: > > - Don't use allocateDirect() unless you plan to keep the returned ByteBuffer > > around for a long time. They are immobile and therefore hard to garbage > > collect. > > Sorry... I should really queue my replies until I reach the end of the commit > log. :| > > > > - ClosedChannelException, AsynchronousCloseException and > > ClosedByInterruptException should be caught and cause a silent failure for a > > smooth shutdown. > > > This is however still valid. > fixed in r19641 ClosedChannelException is the super class of other two. From toad at amphibian.dyndns.org Fri May 2 01:06:40 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Fri, 2 May 2008 02:06:40 +0100 Subject: [freenet-dev] From FMS: Why I2P and Tor suck for anonymous web content Message-ID: <200805020206.46378.toad@amphibian.dyndns.org> Re: bad PR for freenet on Slashdot From: redbull at efWjUA~iOGl7afilkLeYJvWwGX7~GrDoZQd0qUYSfZ0 Date: Friday 02 May 2008 01:04:54 Groups: freenet Followup-To: freenet References: 1 2 3 frogger at lY4SBJ0hg2L7moUkJq~uXc56BjQD5r6b~~WCHTBC4Wg wrote: > At Sat, 26 Apr 2008 20:51:38 +0000 starobrno wrote: > >> Why is this bad PR? If all pedos suddenly left Freenet i would be very >> worried. I mean, it is supposed to protect people from being executed by >> evil dictators. >> If Freenet couldn't even protect the anonymity of people who like to >> look at naked children it would not be really bad. > > It hurts the spread of Freenet. Many people are not willing to run a node > because of this... content. > > So it's bad for Freenet. > IMHO the reason that content is on Freenet is exactly because Freenet achieves higher degree of publisher anonymity and is easier to use than I2P/Tor, at least for static content. I experimented with servers on i2p (eepsites) and Tor (.onion) in the past. Setting up such a server is far more complex than inserting a freesite and publisher anonymity is far lower. Why ? 1) You need to run a webserver somewhere 24x7 if you want your site to be usable ==> need for a server 2) Extra Software. Only i2p brings a minimalistic built-in web server, for tor you have to run your own web server. 3) Avoiding identity leaks by web server software is complex. apache, php, phpbb developers never considered identity leaks a security problem! in anonymous network it *is*, and a benign error message could easily disclose the web server location. This is a very real problem. Recently, someone started an anonymous I2P site... well, it was supposed to be anonymous but one script on his server could load a file from external URL... I think you guess the rest ;) you could read the story here http://forum.i2p2.de/viewtopic.php?t=2574 The only way I can think of to prevent identity leaks completely is to run a web server box (real or virtualized) in a DMZ with no internet connectivity. Something like this: ---[internet]---[gateway box I2P/Tor]-->[Firewall]-->[Anonymous server] Firewall should allow only connections from I2P box to the Anonymous server, but not vice versa. This way anonymous server itself can't find out where it is, but this takes significant effort. And even _then_, my server was a kind of experimental box and didn't have any real content on it. But if I would be one of those guys with illegal content, I personally would be afraid to serve it via this box, because there is Murphy law and something could go wrong ;) Now, compare all this complexity and risks with Freenet, where someone could just insert files from his laptop, delete the files, and go offline. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080502/0570d511/attachment.pgp From ian.clarke at gmail.com Fri May 2 03:12:25 2008 From: ian.clarke at gmail.com (Ian Clarke) Date: Thu, 1 May 2008 22:12:25 -0500 Subject: [freenet-dev] From FMS: Why I2P and Tor suck for anonymous web content In-Reply-To: <200805020206.46378.toad@amphibian.dyndns.org> References: <200805020206.46378.toad@amphibian.dyndns.org> Message-ID: <823242bd0805012012n5181d90fla288edefbfd72929@mail.gmail.com> Well, obviously the context isn't ideal, but its really is a solid benefit to the fundamental architecture of Freenet, and probably one we don't really highlight enough. I sometimes get the sense that there is an anti-Freenet snobbery among some of the more "academic" onion routing based tools, because they can prove that their systems provide anonymity, within well defined (and for the most part, totally unrealistic) constraints. Freenet's approach tries to be a more pragmatic one, based on the general principal that a useful but imperfect anonymous system, is better than none at all, or a system that is perfect according to very narrowly defined criterial and use-cases that few if any people actually comport with. I think this issue is a good example where Freenet is preferable for a very practical reason that would probably bore the crap out of most people who study anonymity systems from an academic perspective. Of course, we all think that child pornography is disgusting, and we wish we lived in a world where it didn't exist etc etc etc But child pornographers, in many ways, are the canary in the coal mine for anonymity systems; Many of them are tech savvy, they have tech savvy adversaries, and obviously they are as highly motivated not to get caught as almost anyone. if these people have decided that Freenet is the best tool for them, then it's a pretty powerful endorsement, albeit from an extremely unsavory group of people. Ian. On Thu, May 1, 2008 at 8:06 PM, Matthew Toseland wrote: > Re: bad PR for freenet on Slashdot > From: > redbull at efWjUA~iOGl7afilkLeYJvWwGX7~GrDoZQd0qUYSfZ0 > Date: > Friday 02 May 2008 01:04:54 > Groups: > freenet > Followup-To: > freenet > References: 1 2 3 > frogger at lY4SBJ0hg2L7moUkJq~uXc56BjQD5r6b~~WCHTBC4Wg wrote: > > At Sat, 26 Apr 2008 20:51:38 +0000 starobrno wrote: > > > >> Why is this bad PR? If all pedos suddenly left Freenet i would be very > >> worried. I mean, it is supposed to protect people from being executed by > >> evil dictators. > >> If Freenet couldn't even protect the anonymity of people who like to > >> look at naked children it would not be really bad. > > > > It hurts the spread of Freenet. Many people are not willing to run a node > > because of this... content. > > > > So it's bad for Freenet. > > > > IMHO the reason that content is on Freenet is exactly because Freenet > achieves higher degree of publisher anonymity and is easier to use than > I2P/Tor, at least for static content. > > I experimented with servers on i2p (eepsites) and Tor (.onion) in the > past. Setting up such a server is far more complex than inserting a > freesite and publisher anonymity is far lower. Why ? > 1) You need to run a webserver somewhere 24x7 if you want your site to > be usable ==> need for a server > 2) Extra Software. Only i2p brings a minimalistic built-in web server, > for tor you have to run your own web server. > 3) Avoiding identity leaks by web server software is complex. apache, > php, phpbb developers never considered identity leaks a security > problem! in anonymous network it *is*, and a benign error message could > easily disclose the web server location. > > This is a very real problem. Recently, someone started an anonymous I2P > site... well, it was supposed to be anonymous but one script on his > server could load a file from external URL... I think you guess the rest > ;) you could read the story here http://forum.i2p2.de/viewtopic.php?t=2574 > > The only way I can think of to prevent identity leaks completely is to > run a web server box (real or virtualized) in a DMZ with no internet > connectivity. Something like this: > ---[internet]---[gateway box I2P/Tor]-->[Firewall]-->[Anonymous server] > > Firewall should allow only connections from I2P box to the Anonymous > server, but not vice versa. This way anonymous server itself can't find > out where it is, but this takes significant effort. > > And even _then_, my server was a kind of experimental box and didn't > have any real content on it. But if I would be one of those guys with > illegal content, I personally would be afraid to serve it via this box, > because there is Murphy law and something could go wrong ;) > > Now, compare all this complexity and risks with Freenet, where someone > could just insert files from his laptop, delete the files, and go offline. > > _______________________________________________ > Devl mailing list > Devl at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl > -- Email: ian at uprizer.com Cell: +1 512 422 3588 Skype: sanity From nextgens at freenetproject.org Fri May 2 05:09:58 2008 From: nextgens at freenetproject.org (Florent =?iso-8859-1?Q?Daigni=E8re?=) Date: Fri, 2 May 2008 07:09:58 +0200 Subject: [freenet-dev] [freenet-cvs] r19643 - in trunk/apps/new_installer: . res/unix/bin In-Reply-To: <20080501134749.5CC4B479D8B@freenetproject.org> References: <20080501134749.5CC4B479D8B@freenetproject.org> Message-ID: <20080502050956.GA3473@freenetproject.org> * toad at freenetproject.org [2008-05-01 13:47:49]: > Author: toad > Date: 2008-05-01 13:47:49 +0000 (Thu, 01 May 2008) > New Revision: 19643 > > Added: > trunk/apps/new_installer/res/unix/bin/install_autostart.sh > Modified: > trunk/apps/new_installer/ProcessPanel.Spec.xml > trunk/apps/new_installer/install.xml > Log: > Auto-start on reboot on unix. > Currently we use a cron job. This will work on non-root, and doesn't require the LSB-utils to be installed (they usually aren't). > However, we should make the script detect if it's run as root and the LSB utils exist, and if so, use the useradd and install_initd scripts. > Added: trunk/apps/new_installer/res/unix/bin/install_autostart.sh > =================================================================== > --- trunk/apps/new_installer/res/unix/bin/install_autostart.sh (rev 0) > +++ trunk/apps/new_installer/res/unix/bin/install_autostart.sh 2008-05-01 13:47:49 UTC (rev 19643) > @@ -0,0 +1,31 @@ > +#!/bin/sh > + > +. "$HOME/_install_toSource.sh" > +cd "$INSTALL_PATH" > + > +# FIXME if we are running as root, and they are installed use the LSB utilities, with crontab as a fallback. > +# See here: > +# http://refspecs.linux-foundation.org/LSB_3.2.0/LSB-Core-generic/LSB-Core-generic/initsrcinstrm.html > +# http://refspecs.linux-foundation.org/LSB_3.2.0/LSB-Core-generic/LSB-Core-generic/useradd.html > +if test -e autostart.install > +then > + echo "Enabling auto-start." > + if test -x `which crontab` > + then > + echo "Installing cron job to start Freenet on reboot..." > + rm -f crontab.tmp > + crontab -l > crontab.tmp > + echo "@reboot \"$INSTALL_PATH/run.sh\" start" >> crontab.tmp > + if crontab crontab.tmp > + then > + echo Installed cron job. > + else > + echo Could not install cron job, you will have to run run.sh start manually to start Freenet after a reboot. > + fi > + rm crontab.tmp > + else > + echo Cron appears not to be installed, you will have to run run.sh start manually to start Freenet after a reboot. > + fi > +else > + echo Auto-start is disabled, you will have to run run.sh start manually to start Freenet after a reboot. > +fi Three things here: 1) Cron is going to send an mail to the user with the output of the crontab entry... in our case we don't want that to happen. You should either silent the output redirecting stdout and stderr or create a special parameter for handling cron in run.sh 2) You shouldn't use a "static" temporary filename (use $$ or $RANDOM). If you need to you can even use autostart.install itself ;) 3) You don't delete autostart.install, do you ? A side note : what about adding a comment you could grep for in the cron entry? That would be much cleaner than grepping for the whole line and would allow us to change the parameters of run.sh if needed ;) -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080502/18954287/attachment.pgp From nextgens at freenetproject.org Fri May 2 12:35:39 2008 From: nextgens at freenetproject.org (Florent =?iso-8859-1?Q?Daigni=E8re?=) Date: Fri, 2 May 2008 14:35:39 +0200 Subject: [freenet-dev] [freenet-cvs] r19671 - trunk/website In-Reply-To: <20080501235731.B5FD84797CB@freenetproject.org> References: <20080501235731.B5FD84797CB@freenetproject.org> Message-ID: <20080502123537.GA3503@freenetproject.org> * NEOatNHNG at freenetproject.org [2008-05-01 23:57:31]: > Author: NEOatNHNG > Date: 2008-05-01 23:57:31 +0000 (Thu, 01 May 2008) > New Revision: 19671 > > Modified: > trunk/website/style.css > Log: > Another little adjustment > The website looks broken from here now... The text is broken up and left-aligned right after the menu items. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080502/21ac953a/attachment.pgp From robert at freenetproject.org Fri May 2 15:24:06 2008 From: robert at freenetproject.org (Robert Hailey) Date: Fri, 2 May 2008 10:24:06 -0500 Subject: [freenet-dev] r19683 - trunk/freenet/src/freenet/store In-Reply-To: <20080502145950.83D6A479D58@freenetproject.org> References: <20080502145950.83D6A479D58@freenetproject.org> Message-ID: On May 2, 2008, at 9:59 AM, j16sdiz at freenetproject.org wrote: > Author: j16sdiz > Date: 2008-05-02 14:59:50 +0000 (Fri, 02 May 2008) > New Revision: 19683 > > Modified: > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > Log: > oomhook: lower database cache size > > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > =================================================================== > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > 2008-05-02 14:59:29 UTC (rev 19682) > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > 2008-05-02 14:59:50 UTC (rev 19683) > @@ -25,6 +25,7 @@ > import com.sleepycat.je.DatabaseNotFoundException; > import com.sleepycat.je.Environment; > import com.sleepycat.je.EnvironmentConfig; > +import com.sleepycat.je.EnvironmentMutableConfig; > import com.sleepycat.je.LockMode; > import com.sleepycat.je.OperationStatus; > import com.sleepycat.je.RunRecoveryException; > @@ -2247,6 +2248,11 @@ > keysFC.force(true); > if (lruFC != null) > lruFC.force(true); > + > + EnvironmentMutableConfig dbmc = environment.getMutableConfig(); > + long cacheSize = (long) (dbmc.getCacheSize() * .9); // we have 6 > databases, 0.9^6 = 0.53 > + dbmc.setCacheSize(cacheSize); > + Logger.normal(this, "low memory, set db cache = " + cacheSize); > } > What is the significance of 0.9^6=0.53? It seems to me if you are trying to half the memory usage, all the caches would have to be reduced by 0.5; otherwise the comment could be made a bit more clear. -- Robert Hailey -------------- next part -------------- An HTML attachment was scrubbed... URL: http://emu.freenetproject.org/pipermail/devl/attachments/20080502/175c561d/attachment.htm From j16sdiz+freenet at gmail.com Fri May 2 15:28:21 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Fri, 2 May 2008 23:28:21 +0800 Subject: [freenet-dev] r19683 - trunk/freenet/src/freenet/store In-Reply-To: References: <20080502145950.83D6A479D58@freenetproject.org> Message-ID: On Fri, May 2, 2008 at 11:24 PM, Robert Hailey wrote: > On May 2, 2008, at 9:59 AM, j16sdiz at freenetproject.org wrote: > > Author: j16sdiz > Date: 2008-05-02 14:59:50 +0000 (Fri, 02 May 2008) > New Revision: 19683 > > Modified: > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > Log: > oomhook: lower database cache size > > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > =================================================================== > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 > 14:59:29 UTC (rev 19682) > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 > 14:59:50 UTC (rev 19683) > @@ -25,6 +25,7 @@ > import com.sleepycat.je.DatabaseNotFoundException; > import com.sleepycat.je.Environment; > import com.sleepycat.je.EnvironmentConfig; > +import com.sleepycat.je.EnvironmentMutableConfig; > import com.sleepycat.je.LockMode; > import com.sleepycat.je.OperationStatus; > import com.sleepycat.je.RunRecoveryException; > @@ -2247,6 +2248,11 @@ > keysFC.force(true); > if (lruFC != null) > lruFC.force(true); > + > + EnvironmentMutableConfig dbmc = environment.getMutableConfig(); > + long cacheSize = (long) (dbmc.getCacheSize() * .9); // we have 6 > databases, 0.9^6 = 0.53 > + dbmc.setCacheSize(cacheSize); > + Logger.normal(this, "low memory, set db cache = " + cacheSize); > } > > > What is the significance of 0.9^6=0.53? It seems to me if you are trying to > half the memory usage, all the caches would have to be reduced by 0.5; > otherwise the comment could be made a bit more clear. > Yes, I am trying to half the memory cache. This cache is global, setting to 90% 6 times give 53% of original size. > -- > Robert Hailey > From NEOatNHNG at users.sourceforge.net Fri May 2 20:49:53 2008 From: NEOatNHNG at users.sourceforge.net (=?UTF-8?B?TWljaGFlbCBUw6RuemVy?=) Date: Fri, 02 May 2008 22:49:53 +0200 Subject: [freenet-dev] New Website Layout Message-ID: <481B7E71.6010005@users.sourceforge.net> Hi folks, I've done a new layout for our website. It isn't just prettier but also cleans up the mess which was done when looking at the old layout with a browser window narrower than 700 pixel. I tested it in Firefox (2 & 3), Opera, IE, Safari and Konqueror, but all of them only in the newest version, it's not seriously broken in any of them. Almost all browsers do have a problem with http://freenetproject.org/documentation.html though, there the menu is quite long and there's not much content, which causes the menu to stick out of the body element (it's just an aesthetical problem, no content is unreadable or inaccessible because of this). As always the IE is the exception, it widens the body element so the menu fits in, but it has other problems: it uses microsofts broken box model therefore the page doesn't look the same way as in the other browsers (but it's not ugly, we could do a CSS hack to fix it, but I don't think we need that) and the picture with the mug (which leads to the freenet shop) isn't centred. Please test the new design in your favourite browsers and let me know if there are some problems. Neo at NHNG -- Follow the blue rabbit - The Freenet Project - http://freenetproject.org/ -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080502/63e5b2b5/attachment.pgp From ian.clarke at gmail.com Fri May 2 22:06:59 2008 From: ian.clarke at gmail.com (Ian Clarke) Date: Fri, 2 May 2008 17:06:59 -0500 Subject: [freenet-dev] New Website Layout In-Reply-To: <481B7E71.6010005@users.sourceforge.net> References: <481B7E71.6010005@users.sourceforge.net> Message-ID: <823242bd0805021506k4954afb2u4e9b718b95af8599@mail.gmail.com> Nice, a few bits of feedback: I'm not sure about the various images in the menu now (the cup, and Hackontext), they look a bit messy with their white backgrounds. I think we may have too much line-spacing between the sub-menu items - the menu can get *very* long sometimes. I'm not sure about the main content wrapping around the menu to the left, I understand this makes better use of available space, but it seems a bit weird - most websites don't make their content wrap around menus. Oh, we need to get rid of the sourceforge logo now that (I believe) we've completely migrated away from sourceforge's hosting. Ian. On Fri, May 2, 2008 at 3:49 PM, Michael T?nzer wrote: > Hi folks, > > I've done a new layout for our website. It isn't just prettier but also > cleans up the mess which was done when looking at the old layout with a > browser window narrower than 700 pixel. > I tested it in Firefox (2 & 3), Opera, IE, Safari and Konqueror, but all > of them only in the newest version, it's not seriously broken in any of > them. Almost all browsers do have a problem with > http://freenetproject.org/documentation.html though, there the menu is > quite long and there's not much content, which causes the menu to stick > out of the body element (it's just an aesthetical problem, no content is > unreadable or inaccessible because of this). As always the IE is the > exception, it widens the body element so the menu fits in, but it has > other problems: it uses microsofts broken box model therefore the page > doesn't look the same way as in the other browsers (but it's not ugly, > we could do a CSS hack to fix it, but I don't think we need that) and > the picture with the mug (which leads to the freenet shop) isn't centred. > > Please test the new design in your favourite browsers and let me know if > there are some problems. > > Neo at NHNG > > -- > Follow the blue rabbit - The Freenet Project - http://freenetproject.org/ > > > _______________________________________________ > Devl mailing list > Devl at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl > -- Email: ian at uprizer.com Cell: +1 512 422 3588 Skype: sanity From Lokivgap at gmx.de Sat May 3 07:57:03 2008 From: Lokivgap at gmx.de (Loki) Date: Sat, 3 May 2008 09:57:03 +0200 Subject: [freenet-dev] New Website Layout Message-ID: <20080503095703.a1db34aa.Lokivgap@gmx.de> A simple solution to solve the problem with the menu is to define "clear: both;" in footer style definition. div#footer { clear: both; text-align: center; } This setting removes all text floating information set before the footer. This force the body element to widen so that the footer can be displayed after the menubox. Loki From toad at amphibian.dyndns.org Sat May 3 13:56:30 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 14:56:30 +0100 Subject: [freenet-dev] New Website Layout In-Reply-To: <823242bd0805021506k4954afb2u4e9b718b95af8599@mail.gmail.com> References: <481B7E71.6010005@users.sourceforge.net> <823242bd0805021506k4954afb2u4e9b718b95af8599@mail.gmail.com> Message-ID: <200805031456.31544.toad@amphibian.dyndns.org> On Friday 02 May 2008 23:06, Ian Clarke wrote: > Nice, a few bits of feedback: > > I'm not sure about the various images in the menu now (the cup, and > Hackontext), they look a bit messy with their white backgrounds. > > I think we may have too much line-spacing between the sub-menu items - > the menu can get *very* long sometimes. > > I'm not sure about the main content wrapping around the menu to the > left, I understand this makes better use of available space, but it > seems a bit weird - most websites don't make their content wrap around > menus. > > Oh, we need to get rid of the sourceforge logo now that (I believe) > we've completely migrated away from sourceforge's hosting. Not completely. We still use their release system, if only to gain additional publicity (since there are generally a couple of hundred people subscribed to the sourceforge release system for Freenet). OTOH we don't use their SVN, we don't use their mailing lists, we don't use their hosting even except for the above... > > Ian. > > On Fri, May 2, 2008 at 3:49 PM, Michael T?nzer > wrote: > > Hi folks, > > > > I've done a new layout for our website. It isn't just prettier but also > > cleans up the mess which was done when looking at the old layout with a > > browser window narrower than 700 pixel. > > I tested it in Firefox (2 & 3), Opera, IE, Safari and Konqueror, but all > > of them only in the newest version, it's not seriously broken in any of > > them. Almost all browsers do have a problem with > > http://freenetproject.org/documentation.html though, there the menu is > > quite long and there's not much content, which causes the menu to stick > > out of the body element (it's just an aesthetical problem, no content is > > unreadable or inaccessible because of this). As always the IE is the > > exception, it widens the body element so the menu fits in, but it has > > other problems: it uses microsofts broken box model therefore the page > > doesn't look the same way as in the other browsers (but it's not ugly, > > we could do a CSS hack to fix it, but I don't think we need that) and > > the picture with the mug (which leads to the freenet shop) isn't centred. > > > > Please test the new design in your favourite browsers and let me know if > > there are some problems. > > > > Neo at NHNG -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/69ba1a49/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 13:57:53 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 14:57:53 +0100 Subject: [freenet-dev] r19683 - trunk/freenet/src/freenet/store In-Reply-To: References: <20080502145950.83D6A479D58@freenetproject.org> Message-ID: <200805031457.53748.toad@amphibian.dyndns.org> On Friday 02 May 2008 16:28, Daniel Cheng wrote: > On Fri, May 2, 2008 at 11:24 PM, Robert Hailey > wrote: > > On May 2, 2008, at 9:59 AM, j16sdiz at freenetproject.org wrote: > > > > Author: j16sdiz > > Date: 2008-05-02 14:59:50 +0000 (Fri, 02 May 2008) > > New Revision: 19683 > > > > Modified: > > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > Log: > > oomhook: lower database cache size > > > > > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > =================================================================== > > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 > > 14:59:29 UTC (rev 19682) > > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 > > 14:59:50 UTC (rev 19683) > > @@ -25,6 +25,7 @@ > > import com.sleepycat.je.DatabaseNotFoundException; > > import com.sleepycat.je.Environment; > > import com.sleepycat.je.EnvironmentConfig; > > +import com.sleepycat.je.EnvironmentMutableConfig; > > import com.sleepycat.je.LockMode; > > import com.sleepycat.je.OperationStatus; > > import com.sleepycat.je.RunRecoveryException; > > @@ -2247,6 +2248,11 @@ > > keysFC.force(true); > > if (lruFC != null) > > lruFC.force(true); > > + > > + EnvironmentMutableConfig dbmc = environment.getMutableConfig(); > > + long cacheSize = (long) (dbmc.getCacheSize() * .9); // we have 6 > > databases, 0.9^6 = 0.53 > > + dbmc.setCacheSize(cacheSize); > > + Logger.normal(this, "low memory, set db cache = " + cacheSize); > > } > > > > > > What is the significance of 0.9^6=0.53? It seems to me if you are trying to > > half the memory usage, all the caches would have to be reduced by 0.5; > > otherwise the comment could be made a bit more clear. > > > > Yes, I am trying to half the memory cache. > This cache is global, setting to 90% 6 times give 53% of original size. I'm not sure that makes sense. Don't you just want to set it to 90% overall? -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/829501cc/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 13:58:50 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 14:58:50 +0100 Subject: [freenet-dev] r19683 - trunk/freenet/src/freenet/store In-Reply-To: References: <20080502145950.83D6A479D58@freenetproject.org> Message-ID: <200805031458.50421.toad@amphibian.dyndns.org> On Friday 02 May 2008 16:24, Robert Hailey wrote: > > On May 2, 2008, at 9:59 AM, j16sdiz at freenetproject.org wrote: > > > Author: j16sdiz > > Date: 2008-05-02 14:59:50 +0000 (Fri, 02 May 2008) > > New Revision: 19683 > > > > Modified: > > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > Log: > > oomhook: lower database cache size > > > > > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > =================================================================== > > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > 2008-05-02 14:59:29 UTC (rev 19682) > > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > 2008-05-02 14:59:50 UTC (rev 19683) > > @@ -25,6 +25,7 @@ > > import com.sleepycat.je.DatabaseNotFoundException; > > import com.sleepycat.je.Environment; > > import com.sleepycat.je.EnvironmentConfig; > > +import com.sleepycat.je.EnvironmentMutableConfig; > > import com.sleepycat.je.LockMode; > > import com.sleepycat.je.OperationStatus; > > import com.sleepycat.je.RunRecoveryException; > > @@ -2247,6 +2248,11 @@ > > keysFC.force(true); > > if (lruFC != null) > > lruFC.force(true); > > + > > + EnvironmentMutableConfig dbmc = environment.getMutableConfig(); > > + long cacheSize = (long) (dbmc.getCacheSize() * .9); // we have 6 > > databases, 0.9^6 = 0.53 > > + dbmc.setCacheSize(cacheSize); > > + Logger.normal(this, "low memory, set db cache = " + cacheSize); > > } > > > > What is the significance of 0.9^6=0.53? It seems to me if you are > trying to half the memory usage, all the caches would have to be > reduced by 0.5; otherwise the comment could be made a bit more clear. Be careful not to adjust it down to zero. Setting the max database memory to 0 currently sets it unlimited, resulting in full GCs every <10 seconds which last for ~ 3 seconds... -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/fa837e54/attachment.pgp From ian.clarke at gmail.com Sat May 3 15:02:28 2008 From: ian.clarke at gmail.com (Ian Clarke) Date: Sat, 3 May 2008 10:02:28 -0500 Subject: [freenet-dev] New Website Layout In-Reply-To: <200805031456.31544.toad@amphibian.dyndns.org> References: <481B7E71.6010005@users.sourceforge.net> <823242bd0805021506k4954afb2u4e9b718b95af8599@mail.gmail.com> <200805031456.31544.toad@amphibian.dyndns.org> Message-ID: <823242bd0805030802k7be0b8a7ud8e438fcaeb17858@mail.gmail.com> On Sat, May 3, 2008 at 8:56 AM, Matthew Toseland wrote: > Not completely. We still use their release system, if only to gain additional > publicity (since there are generally a couple of hundred people subscribed to > the sourceforge release system for Freenet). OTOH we don't use their SVN, we > don't use their mailing lists, we don't use their hosting even except for the > above... I don't think use of their release system justifies their logo on our website, we could stop using it and I doubt it would make any difference whatsoever. Ian. -- Email: ian at uprizer.com Cell: +1 512 422 3588 Skype: sanity From toad at amphibian.dyndns.org Sat May 3 16:05:58 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 17:05:58 +0100 Subject: [freenet-dev] =?utf-8?q?=5Bfreenet-cvs=5D_r19643_-_in_trunk/apps/?= =?utf-8?q?new=5Finstaller=3A_=2E=09res/unix/bin?= In-Reply-To: <20080502050956.GA3473@freenetproject.org> References: <20080501134749.5CC4B479D8B@freenetproject.org> <20080502050956.GA3473@freenetproject.org> Message-ID: <200805031706.03493.toad@amphibian.dyndns.org> On Friday 02 May 2008 06:09, Florent Daigni?re wrote: > * toad at freenetproject.org [2008-05-01 13:47:49]: > > > Author: toad > > Date: 2008-05-01 13:47:49 +0000 (Thu, 01 May 2008) > > New Revision: 19643 > > > > Added: > > trunk/apps/new_installer/res/unix/bin/install_autostart.sh > > Modified: > > trunk/apps/new_installer/ProcessPanel.Spec.xml > > trunk/apps/new_installer/install.xml > > Log: > > Auto-start on reboot on unix. > > Currently we use a cron job. This will work on non-root, and doesn't require the LSB-utils to be installed (they usually aren't). > > However, we should make the script detect if it's run as root and the LSB utils exist, and if so, use the useradd and install_initd scripts. > > Added: trunk/apps/new_installer/res/unix/bin/install_autostart.sh > > =================================================================== > > --- trunk/apps/new_installer/res/unix/bin/install_autostart.sh (rev 0) > > +++ trunk/apps/new_installer/res/unix/bin/install_autostart.sh 2008-05-01 13:47:49 UTC (rev 19643) > > @@ -0,0 +1,31 @@ > > +#!/bin/sh > > + > > +. "$HOME/_install_toSource.sh" > > +cd "$INSTALL_PATH" > > + > > +# FIXME if we are running as root, and they are installed use the LSB utilities, with crontab as a fallback. > > +# See here: > > +# http://refspecs.linux-foundation.org/LSB_3.2.0/LSB-Core-generic/LSB-Core-generic/initsrcinstrm.html > > +# http://refspecs.linux-foundation.org/LSB_3.2.0/LSB-Core-generic/LSB-Core-generic/useradd.html > > +if test -e autostart.install > > +then > > + echo "Enabling auto-start." > > + if test -x `which crontab` > > + then > > + echo "Installing cron job to start Freenet on reboot..." > > + rm -f crontab.tmp > > + crontab -l > crontab.tmp > > + echo "@reboot \"$INSTALL_PATH/run.sh\" start" >> crontab.tmp > > + if crontab crontab.tmp > > + then > > + echo Installed cron job. > > + else > > + echo Could not install cron job, you will have to run run.sh start manually to start Freenet after a reboot. > > + fi > > + rm crontab.tmp > > + else > > + echo Cron appears not to be installed, you will have to run run.sh start manually to start Freenet after a reboot. > > + fi > > +else > > + echo Auto-start is disabled, you will have to run run.sh start manually to start Freenet after a reboot. > > +fi > > Three things here: > 1) Cron is going to send an mail to the user with the output of > the crontab entry... in our case we don't want that to happen. > You should either silent the output redirecting stdout and > stderr or create a special parameter for handling cron in run.sh > 2) You shouldn't use a "static" temporary filename (use $$ or > $RANDOM). If you need to you can even use autostart.install > itself ;) > 3) You don't delete autostart.install, do you ? > > A side note : what about adding a comment you could grep for in the cron > entry? That would be much cleaner than grepping for the whole line and > would allow us to change the parameters of run.sh if needed ;) > Nextgens has fixed these issues. Thanks! -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/fdcbabec/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 17:23:25 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 18:23:25 +0100 Subject: [freenet-dev] Config page usability In-Reply-To: <200804281528.02828.toad@amphibian.dyndns.org> References: <200804281528.02828.toad@amphibian.dyndns.org> Message-ID: <200805031823.30598.toad@amphibian.dyndns.org> On Monday 28 April 2008 15:27, Matthew Toseland wrote: > In simple mode, the config page lists things like what IP address FCP should > bind to. This is to minimise our support overhead from users who half know > what they're doing, but who don't see the advanced mode flag ... But for most > users, it sucks. The config page should only list simple stuff, e.g. > bandwidth limits, and it should be short. > > I will remove a load of geeky options from the config page. But we should > think about whether we should have three modes: simple, medium and advanced. > This might be the best compromise. There are lots of options that are only > comprehensible to people who've used freenet for a while, but there are also > a fair number of options that are comprehensible to geeks, but not to > non-geeks. IMHO these should go in medium. > Implemented simple/advanced links on the config page in r19708. The advanced mode flag determines the default. The other pages still depend on the global advanced mode flag. AFAICS there's no real reason for them to have simple/advanced, it's just unnecessary clutter: advanced is only needed by devs etc who can turn on the global advanced mode. Reasonable? -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/2e7212e5/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 18:31:38 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 19:31:38 +0100 Subject: [freenet-dev] [freenet-cvs] r19675 - in trunk/freenet/src/freenet: crypt node store support In-Reply-To: <20080502101013.00472479738@freenetproject.org> References: <20080502101013.00472479738@freenetproject.org> Message-ID: <200805031931.42738.toad@amphibian.dyndns.org> I'm not convinced about this. Reaching 8MB less than the max memory is normal - for example if you use the -server VM, it will always happen, and soon after startup, because the VM doesn't GC until it reaches the limit. IMHO we should only execute the low memory hooks if we either get an OOM, or if we have less than 8MB left *after a garbage collection*. Note that there are command line options to make explicit garbage collection a no-op, so the latter isn't easy; and explicitly GCing on a regular schedule is generally regarded as a *bad* thing. On Friday 02 May 2008 11:10, j16sdiz at freenetproject.org wrote: > Author: j16sdiz > Date: 2008-05-02 10:10:12 +0000 (Fri, 02 May 2008) > New Revision: 19675 > > Modified: > trunk/freenet/src/freenet/crypt/SHA256.java > trunk/freenet/src/freenet/node/MemoryChecker.java > trunk/freenet/src/freenet/node/Node.java > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > trunk/freenet/src/freenet/support/OOMHandler.java > trunk/freenet/src/freenet/support/OOMHook.java > Log: > alternative low memory / out of memory handling > > > Modified: trunk/freenet/src/freenet/crypt/SHA256.java > =================================================================== > --- trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -44,6 +44,8 @@ > import freenet.node.Node; > import freenet.node.NodeInitException; > import freenet.support.Logger; > +import freenet.support.OOMHandler; > +import freenet.support.OOMHook; > import freenet.support.io.Closer; > > /** > @@ -105,7 +107,7 @@ > String algo = md256.getAlgorithm(); > if(!(algo.equals("SHA-256") || algo.equals("SHA256"))) > throw new IllegalArgumentException("Should be SHA-256 but is " + algo); > - if (digests.size() > 16) // don't cache too many of them > + if (digests.size() > 16 || noCache) // don't cache too many of them > return; > md256.reset(); > digests.add(md256); > @@ -121,4 +123,20 @@ > public static int getDigestLength() { > return HASH_SIZE; > } > + > + private static boolean noCache = false; > + > + static { > + OOMHandler.addOOMHook(new OOMHook() { > + public void handleLowMemory() throws Exception { > + digests.clear(); > + noCache = true; > + } > + > + public void handleOutOfMemory() throws Exception { > + digests.clear(); > + noCache = true; > + } > + }); > + } > } > > Modified: trunk/freenet/src/freenet/node/MemoryChecker.java > =================================================================== > --- trunk/freenet/src/freenet/node/MemoryChecker.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/node/MemoryChecker.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -4,6 +4,7 @@ > package freenet.node; > > import freenet.support.Logger; > +import freenet.support.OOMHandler; > import freenet.support.SizeUtil; > > public class MemoryChecker implements Runnable { > @@ -42,6 +43,11 @@ > > Logger.normal(this, "Memory in use: "+SizeUtil.formatSize((r.totalMemory()-r.freeMemory()))); > > + if (r.freeMemory() < 4096 * 1024 * 1024) { // free memory < 8 MB > + Logger.error(this, "memory too low, trying to free some"); > + OOMHandler.lowMemory(); > + } > + > int sleeptime = aggressiveGCModificator; > if(sleeptime <= 0) { // We are done > ps.queueTimedJob(this, 120 * 250); // 30 sec > > Modified: trunk/freenet/src/freenet/node/Node.java > =================================================================== > --- trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -124,7 +124,7 @@ > /** > * @author amphibian > */ > -public class Node implements TimeSkewDetectorCallback, GetPubkey, OOMHook { > +public class Node implements TimeSkewDetectorCallback, GetPubkey { > > private static boolean logMINOR; > > @@ -1604,8 +1604,6 @@ > e.printStackTrace(); > throw new NodeInitException(NodeInitException.EXIT_COULD_NOT_START_UPDATER, "Could not create Updater: "+e); > } > - > - OOMHandler.addOOMHook(this); > > Logger.normal(this, "Node constructor completed"); > System.out.println("Node constructor completed"); > @@ -3306,23 +3304,4 @@ > public void setDispatcherHook(NodeDispatcherCallback cb) { > this.dispatcher.setHook(cb); > } > - > - /** > - * Free some memory > - */ > - public void handleOOM() throws Exception { > - if (cachedPubKeys != null) { > - Object value; > - do { > - value = cachedPubKeys.popKey(); > - } while (value != null); > - } > - if (recentlyCompletedIDs != null) { > - synchronized (recentlyCompletedIDs) { > - // half it size > - while (recentlyCompletedIDs.size() > MAX_RECENTLY_COMPLETED_IDS / 2) > - recentlyCompletedIDs.pop(); > - } > - } > - } > } > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > =================================================================== > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -2239,15 +2239,30 @@ > bf.get(data); > } > > - public void handleOOM() throws Exception { > - if (storeRAF != null) > - storeRAF.getFD().sync(); > - if (keysRAF != null) > - keysRAF.getFD().sync(); > - if (lruRAF != null) > - lruRAF.getFD().sync(); > + public void handleLowMemory() throws Exception { > + // Flush all > + if (storeFC != null) > + storeFC.force(true); > + if (keysFC != null) > + keysFC.force(true); > + if (lruFC != null) > + lruFC.force(true); > } > > + public void handleOutOfMemory() throws Exception { > + // database likely to be corrupted, > + // reconstruct it just in case > + reconstructFile.createNewFile(); > + > + // Flush all > + if (storeFC != null) > + storeFC.force(true); > + if (keysFC != null) > + keysFC.force(true); > + if (lruFC != null) > + lruFC.force(true); > + } > + > /** > * @return > */ > > Modified: trunk/freenet/src/freenet/support/OOMHandler.java > =================================================================== > --- trunk/freenet/src/freenet/support/OOMHandler.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/support/OOMHandler.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -33,6 +33,30 @@ > } > } > > + /** > + * Call this when running low of memory > + */ > + public static void lowMemory() { > + System.gc(); > + System.runFinalization(); > + > + // iterate all oom hooks > + Iterator it = oomHooks.iterator(); > + while (it.hasNext()) { > + OOMHook hook = ((OOMHook) it.next()); > + if (hook != null) { > + try { > + hook.handleLowMemory(); > + } catch (Throwable t) { > + //ignore > + } > + } > + } > + > + System.gc(); > + System.runFinalization(); > + } > + > public static void handleOOM(OutOfMemoryError e) { > if (isOOM) { > Logger.error(null, "Double OOM", e); > @@ -51,20 +75,18 @@ > > System.gc(); > System.runFinalization(); > - > + > // iterate all oom hooks > Iterator it = oomHooks.iterator(); > while (it.hasNext()) { > OOMHook hook = ((OOMHook) it.next()); > if (hook != null) { > try { > - hook.handleOOM(); > + hook.handleOutOfMemory(); > } catch (Throwable t) { > //ignore > } > } > - > - System.gc(); > } > > System.gc(); > > Modified: trunk/freenet/src/freenet/support/OOMHook.java > =================================================================== > --- trunk/freenet/src/freenet/support/OOMHook.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/support/OOMHook.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -5,9 +5,14 @@ > */ > public interface OOMHook { > /** > - * Handle OutOfMemoryError > + * Handle running low of memory > * > * (try to free some cache, save the files, etc). > */ > - void handleOOM() throws Exception; > + void handleLowMemory() throws Exception; > + > + /** > + * Handle running out of memory > + */ > + void handleOutOfMemory() throws Exception; > } > > _______________________________________________ > cvs mailing list > cvs at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs > > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/08e0a449/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 18:40:35 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 19:40:35 +0100 Subject: [freenet-dev] [freenet-cvs] r19685 - trunk/freenet/src/freenet/store In-Reply-To: <20080502160608.DF98347B2B0@freenetproject.org> References: <20080502160608.DF98347B2B0@freenetproject.org> Message-ID: <200805031940.35326.toad@amphibian.dyndns.org> On Friday 02 May 2008 17:06, j16sdiz at freenetproject.org wrote: > Author: j16sdiz > Date: 2008-05-02 16:06:08 +0000 (Fri, 02 May 2008) > New Revision: 19685 > > Modified: > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > Log: > revert r19683, it just doesn't work Why not? > > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > =================================================================== > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 15:49:47 UTC (rev 19684) > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 16:06:08 UTC (rev 19685) > @@ -25,7 +25,6 @@ > import com.sleepycat.je.DatabaseNotFoundException; > import com.sleepycat.je.Environment; > import com.sleepycat.je.EnvironmentConfig; > -import com.sleepycat.je.EnvironmentMutableConfig; > import com.sleepycat.je.LockMode; > import com.sleepycat.je.OperationStatus; > import com.sleepycat.je.RunRecoveryException; > @@ -2248,11 +2247,6 @@ > keysFC.force(true); > if (lruFC != null) > lruFC.force(true); > - > - EnvironmentMutableConfig dbmc = environment.getMutableConfig(); > - long cacheSize = (long) (dbmc.getCacheSize() * .9); // we have 6 databases, 0.9^6 = 0.53 > - dbmc.setCacheSize(cacheSize); > - Logger.normal(this, "low memory, set db cache = " + cacheSize); > } > > public void handleOutOfMemory() throws Exception { > > _______________________________________________ > cvs mailing list > cvs at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs > > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/d7bfb29f/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 18:43:37 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 19:43:37 +0100 Subject: [freenet-dev] [freenet-cvs] r19693 - trunk/freenet/src/freenet/support/io In-Reply-To: <20080503114509.CE2C5478D7B@freenetproject.org> References: <20080503114509.CE2C5478D7B@freenetproject.org> Message-ID: <200805031943.37365.toad@amphibian.dyndns.org> On Saturday 03 May 2008 12:45, nextgens at freenetproject.org wrote: > Author: nextgens > Date: 2008-05-03 11:45:09 +0000 (Sat, 03 May 2008) > New Revision: 19693 > > Modified: > trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > Log: > Some paranoia (flush() before close() just in case a BufferedOutputStream is catching exceptions) Shouldn't you catch and log the exception from flush()? > > Modified: trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > =================================================================== > --- trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java 2008-05-03 11:25:50 UTC (rev 19692) > +++ trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java 2008-05-03 11:45:09 UTC (rev 19693) > @@ -194,6 +194,7 @@ > } > } finally { > closed = true; > + out.flush(); > out.close(); > } > } > > _______________________________________________ > cvs mailing list > cvs at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs > > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/189e4653/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 18:44:25 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 19:44:25 +0100 Subject: [freenet-dev] [freenet-cvs] r19694 - trunk/freenet/src/freenet/support/io In-Reply-To: <20080503114802.24217478D98@freenetproject.org> References: <20080503114802.24217478D98@freenetproject.org> Message-ID: <200805031944.26089.toad@amphibian.dyndns.org> On Saturday 03 May 2008 12:48, nextgens at freenetproject.org wrote: > Author: nextgens > Date: 2008-05-03 11:48:01 +0000 (Sat, 03 May 2008) > New Revision: 19694 > > Modified: > trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > Log: > Don't instanciate a new MT; use the existing one. Does this mean we use the MT for key generation? We ought to use Yarrow for that. > > Modified: trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > =================================================================== > --- trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java 2008-05-03 11:45:09 UTC (rev 19693) > +++ trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java 2008-05-03 11:48:01 UTC (rev 19694) > @@ -28,7 +28,7 @@ > > private final Bucket bucket; > private final int minPaddedSize; > - private final RandomSource origRandom; > + private final RandomSource randomSource; > private SoftReference /* */ aesRef; > /** The decryption key. */ > private final byte[] key; > @@ -45,7 +45,7 @@ > * @throws UnsupportedCipherException > */ > public PaddedEphemerallyEncryptedBucket(Bucket bucket, int minSize, RandomSource origRandom) { > - this.origRandom = origRandom; > + this.randomSource = origRandom; > this.bucket = bucket; > if(bucket.size() != 0) throw new IllegalArgumentException("Bucket must be empty"); > byte[] tempKey = new byte[32]; > @@ -72,7 +72,7 @@ > if(bucket.size() < knownSize) > throw new IOException("Bucket "+bucket+" is too small on disk - knownSize="+knownSize+" but bucket.size="+bucket.size()+" for "+bucket); > this.dataLength = knownSize; > - this.origRandom = origRandom; > + this.randomSource = origRandom; > this.bucket = bucket; > if(key.length != 32) throw new IllegalArgumentException("Key wrong length: "+key.length); > this.key = key; > @@ -82,7 +82,7 @@ > } > > public PaddedEphemerallyEncryptedBucket(SimpleFieldSet fs, RandomSource origRandom, PersistentFileTracker f) throws CannotCreateFromFieldSetException { > - this.origRandom = origRandom; > + this.randomSource = origRandom; > String tmp = fs.get("DataLength"); > if(tmp == null) > throw new CannotCreateFromFieldSetException("No DataLength"); > @@ -180,14 +180,13 @@ > return; > } > synchronized(PaddedEphemerallyEncryptedBucket.this) { > - MersenneTwister paddingSource = new MersenneTwister(origRandom.nextLong()); > long finalLength = paddedLength(); > long padding = finalLength - dataLength; > byte[] buf = new byte[4096]; > long writtenPadding = 0; > while(writtenPadding < padding) { > int left = (int) Math.min((padding - writtenPadding), (long)buf.length); > - paddingSource.nextBytes(buf); > + randomSource.nextBytes(buf); > out.write(buf, 0, left); > writtenPadding += left; > } > > _______________________________________________ > cvs mailing list > cvs at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs > > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/9b2179b6/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 19:04:05 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 20:04:05 +0100 Subject: [freenet-dev] [freenet-cvs] r19675 - in trunk/freenet/src/freenet: crypt node store support In-Reply-To: <20080502101013.00472479738@freenetproject.org> References: <20080502101013.00472479738@freenetproject.org> Message-ID: <200805032004.09203.toad@amphibian.dyndns.org> On Friday 02 May 2008 11:10, j16sdiz at freenetproject.org wrote: > Author: j16sdiz > Date: 2008-05-02 10:10:12 +0000 (Fri, 02 May 2008) > New Revision: 19675 > > Modified: > trunk/freenet/src/freenet/crypt/SHA256.java > trunk/freenet/src/freenet/node/MemoryChecker.java > trunk/freenet/src/freenet/node/Node.java > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > trunk/freenet/src/freenet/support/OOMHandler.java > trunk/freenet/src/freenet/support/OOMHook.java > Log: > alternative low memory / out of memory handling > > Modified: trunk/freenet/src/freenet/crypt/SHA256.java > =================================================================== > --- trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -44,6 +44,8 @@ > import freenet.node.Node; > import freenet.node.NodeInitException; > import freenet.support.Logger; > +import freenet.support.OOMHandler; > +import freenet.support.OOMHook; > import freenet.support.io.Closer; > > /** > @@ -105,7 +107,7 @@ > String algo = md256.getAlgorithm(); > if(!(algo.equals("SHA-256") || algo.equals("SHA256"))) > throw new IllegalArgumentException("Should be SHA-256 but is " + algo); > - if (digests.size() > 16) // don't cache too many of them > + if (digests.size() > 16 || noCache) // don't cache too many of them > return; > md256.reset(); > digests.add(md256); > @@ -121,4 +123,20 @@ > public static int getDigestLength() { > return HASH_SIZE; > } > + > + private static boolean noCache = false; > + > + static { > + OOMHandler.addOOMHook(new OOMHook() { > + public void handleLowMemory() throws Exception { > + digests.clear(); > + noCache = true; > + } > + > + public void handleOutOfMemory() throws Exception { > + digests.clear(); > + noCache = true; > + } > + }); > + } > } So when we reach the memory limit, we turn off caching and get more churn and therefore hit it more quickly ... well I suppose it's a tradeoff. > > Modified: trunk/freenet/src/freenet/node/MemoryChecker.java > =================================================================== > --- trunk/freenet/src/freenet/node/MemoryChecker.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/node/MemoryChecker.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -4,6 +4,7 @@ > package freenet.node; > > import freenet.support.Logger; > +import freenet.support.OOMHandler; > import freenet.support.SizeUtil; > > public class MemoryChecker implements Runnable { > @@ -42,6 +43,11 @@ > > Logger.normal(this, "Memory in use: "+SizeUtil.formatSize((r.totalMemory()-r.freeMemory()))); > > + if (r.freeMemory() < 4096 * 1024 * 1024) { // free memory < 8 MB > + Logger.error(this, "memory too low, trying to free some"); > + OOMHandler.lowMemory(); > + } > + I've changed this to do a GC and then re-check. If we are still at the limit for total memory and have less than 8MB free, *then* we hit the low memory handler. I'm not entirely convinced though. We will end up doing a lot more full GCs this way ... often on systems that don't have a memory problem. > int sleeptime = aggressiveGCModificator; > if(sleeptime <= 0) { // We are done > ps.queueTimedJob(this, 120 * 250); // 30 sec > > Modified: trunk/freenet/src/freenet/node/Node.java > =================================================================== > --- trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -124,7 +124,7 @@ > /** > * @author amphibian > */ > -public class Node implements TimeSkewDetectorCallback, GetPubkey, OOMHook { > +public class Node implements TimeSkewDetectorCallback, GetPubkey { > > private static boolean logMINOR; > > @@ -1604,8 +1604,6 @@ > e.printStackTrace(); > throw new NodeInitException(NodeInitException.EXIT_COULD_NOT_START_UPDATER, "Could not create Updater: "+e); > } > - > - OOMHandler.addOOMHook(this); > > Logger.normal(this, "Node constructor completed"); > System.out.println("Node constructor completed"); > @@ -3306,23 +3304,4 @@ > public void setDispatcherHook(NodeDispatcherCallback cb) { > this.dispatcher.setHook(cb); > } > - > - /** > - * Free some memory > - */ > - public void handleOOM() throws Exception { > - if (cachedPubKeys != null) { > - Object value; > - do { > - value = cachedPubKeys.popKey(); > - } while (value != null); > - } > - if (recentlyCompletedIDs != null) { > - synchronized (recentlyCompletedIDs) { > - // half it size > - while (recentlyCompletedIDs.size() > MAX_RECENTLY_COMPLETED_IDS / 2) > - recentlyCompletedIDs.pop(); > - } > - } > - } > } Why did you delete the pubkey cache clearing OOM hook? > > Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > =================================================================== > --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -2239,15 +2239,30 @@ > bf.get(data); > } > > - public void handleOOM() throws Exception { > - if (storeRAF != null) > - storeRAF.getFD().sync(); > - if (keysRAF != null) > - keysRAF.getFD().sync(); > - if (lruRAF != null) > - lruRAF.getFD().sync(); > + public void handleLowMemory() throws Exception { > + // Flush all > + if (storeFC != null) > + storeFC.force(true); > + if (keysFC != null) > + keysFC.force(true); > + if (lruFC != null) > + lruFC.force(true); > } > > + public void handleOutOfMemory() throws Exception { > + // database likely to be corrupted, > + // reconstruct it just in case > + reconstructFile.createNewFile(); > + > + // Flush all > + if (storeFC != null) > + storeFC.force(true); > + if (keysFC != null) > + keysFC.force(true); > + if (lruFC != null) > + lruFC.force(true); > + } > + > /** > * @return > */ > > Modified: trunk/freenet/src/freenet/support/OOMHandler.java > =================================================================== > --- trunk/freenet/src/freenet/support/OOMHandler.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/support/OOMHandler.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -33,6 +33,30 @@ > } > } > > + /** > + * Call this when running low of memory > + */ > + public static void lowMemory() { > + System.gc(); > + System.runFinalization(); > + > + // iterate all oom hooks > + Iterator it = oomHooks.iterator(); > + while (it.hasNext()) { > + OOMHook hook = ((OOMHook) it.next()); > + if (hook != null) { > + try { > + hook.handleLowMemory(); > + } catch (Throwable t) { > + //ignore > + } > + } > + } > + > + System.gc(); > + System.runFinalization(); > + } > + > public static void handleOOM(OutOfMemoryError e) { > if (isOOM) { > Logger.error(null, "Double OOM", e); > @@ -51,20 +75,18 @@ > > System.gc(); > System.runFinalization(); > - > + > // iterate all oom hooks > Iterator it = oomHooks.iterator(); > while (it.hasNext()) { > OOMHook hook = ((OOMHook) it.next()); > if (hook != null) { > try { > - hook.handleOOM(); > + hook.handleOutOfMemory(); > } catch (Throwable t) { > //ignore > } > } > - > - System.gc(); > } > > System.gc(); > > Modified: trunk/freenet/src/freenet/support/OOMHook.java > =================================================================== > --- trunk/freenet/src/freenet/support/OOMHook.java 2008-05-02 10:09:13 UTC (rev 19674) > +++ trunk/freenet/src/freenet/support/OOMHook.java 2008-05-02 10:10:12 UTC (rev 19675) > @@ -5,9 +5,14 @@ > */ > public interface OOMHook { > /** > - * Handle OutOfMemoryError > + * Handle running low of memory > * > * (try to free some cache, save the files, etc). > */ > - void handleOOM() throws Exception; > + void handleLowMemory() throws Exception; > + > + /** > + * Handle running out of memory > + */ > + void handleOutOfMemory() throws Exception; > } -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/bd149707/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 19:05:52 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 20:05:52 +0100 Subject: [freenet-dev] [freenet-cvs] r19674 - trunk/freenet/src/freenet/crypt In-Reply-To: <20080502100913.BD7E34790AB@freenetproject.org> References: <20080502100913.BD7E34790AB@freenetproject.org> Message-ID: <200805032005.52808.toad@amphibian.dyndns.org> On Friday 02 May 2008 11:09, j16sdiz at freenetproject.org wrote: > Author: j16sdiz > Date: 2008-05-02 10:09:13 +0000 (Fri, 02 May 2008) > New Revision: 19674 > > Modified: > trunk/freenet/src/freenet/crypt/SHA256.java > Log: > limit number of cached SHA256 md Any particular reason for a limit of 16? We use a lot of SHA256's... > > > Modified: trunk/freenet/src/freenet/crypt/SHA256.java > =================================================================== > --- trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 09:44:53 UTC (rev 19673) > +++ trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:09:13 UTC (rev 19674) > @@ -105,6 +105,8 @@ > String algo = md256.getAlgorithm(); > if(!(algo.equals("SHA-256") || algo.equals("SHA256"))) > throw new IllegalArgumentException("Should be SHA-256 but is " + algo); > + if (digests.size() > 16) // don't cache too many of them > + return; > md256.reset(); > digests.add(md256); > } -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/e52097d9/attachment.pgp From esabyte at gmail.com Sat May 3 20:00:52 2008 From: esabyte at gmail.com (Singularity) Date: Sat, 03 May 2008 22:00:52 +0200 Subject: [freenet-dev] Italian translation update Message-ID: <481CC474.7020600@gmail.com> Hi all, I'm a (quite) new Freenet user, I have updated IT translation (all incomplete and remaining strings); ================================================================== Announcer.announceAlertShort=Il nodo sta cercando di connettersi alla rete, nel frattempo sar? pi lento. Announcer.announceDisabledTooOldShort=Il nodo ha tentato di connettersi alla rete ma la tua versione di Freenet ? obsoleta. Dovresti aggiornarla! BookmarkItem.bookmarkUpdatedShort=Freesite ${name} aggiornato. BuildOldAgeUserAlert.tooOldShort=Su questo nodo sta girando una versione talmente vecchia di Freenet per cui non ? possible connettersi ai propri peers. Aggiornare per favore! ClockProblemDetectedUserAlert.shortText=L'orologio del computer non ? sincronizzato, quindi Freenet non pu? connettersi. ConfigToadlet.wrapper=wrapper ConfigToadlet.wrapperSettingsTitle=Impostazioni wrapper ExtOldAgeUserAlert.extTooOldShort=Il file freenet-ext.jar ? vecchio. Per favore aggiornalo. FProxyToadlet.alerts=Messaggi di stato dettagliati FProxyToadlet.alertsTitle=Avvertenze FileOffer.failedReceiveShort=Il trasferimento di ${filename} da ${node} ? fallito. FileOffer.offeredFileShort=Il tuo peer amico ${node} ti sta offrendo il file ${filename}. FileOffer.succeededReceiveShort=${filename} correttamente ricevuto da ${node}. FirstTimeWizardToadlet.bwlimitHigherSpeed=Velocit? maggiore FirstTimeWizardToadlet.bwlimitLowerSpeed=Velocit? minore FirstTimeWizardToadlet.memoryLimit=Memoria utilizzata FirstTimeWizardToadlet.memoryLimitLong=Quanta memoria vuoi permettere a Freenet di utilizzare? Se hai molti download o upload in coda, Freenet necessiter? di pi? memoria. Suggeriamo di non scendere sotto i 128 Mb a meno che tu non sia realmente a corto di RAM. Se hai 1 Gb o pi?, dovresti settare almeno a 256 Mb. La modific? sar? effettiva al prossimo riavvio di Freenet. FirstTimeWizardToadlet.step6Title=Configurazione guidata del primo avvio di Freenet! - Utilizzo della memoria FirstTimeWizardToadlet.memory.128M=128Mb - stretto necessario FirstTimeWizardToadlet.memory.192M=192Mb - ragionevole FirstTimeWizardToadlet.memory.256M=256Mb - se hai almeno 1GB di RAM FirstTimeWizardToadlet.memory.512M=512Mb - se hai un sacco di RAM FirstTimeWizardToadlet.memory.64M=64MB - se sei davvero disperato IPDetectorPluginManager.connectionProblems=Problemi di connessione: IPDetectorPluginManager.forwardPort=Il tuo nodo sembra essere dietro qualche tipo di NAT (vedi la pagina connettivit? per dettagli). Se possibile, dovresti forwardare la porta ${port} UDP (non TCP) per migliorare la connettivit?. E' possibile comunque che tu abbia gi? provveduto; Serve del tempo a Freenet per rilevare il port forward. Leggi ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardPortShort=Per favore, forwardare la porta UDP ${port}. IPDetectorPluginManager.forwardTwoPorts=Il tuo nodo sembra essere dietro quanlche tipo di NAT (vedi la pagina connettivit? per dettagli). Se possibile, dovresti forwardare le porte ${port1} e ${port2} UDP (non TCP) per migliorare la connettivit?. E' possibile comunque che tu abbia gi? provveduto; Serve del tempo a Freenet per rilevare il port forward. Leggi ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.noConnectivityshort=Gravi problemi di connessione: Nessuna connettivit? UDP, Freenet non pu? funzionare! IPDetectorPluginManager.portForwardHelpURL=http://wiki.freenetproject.org/FirewallAndRouterIssues (Problematiche con firewall e routers) IPDetectorPluginManager.seriousConnectionProblems=Gravi problemi di connessione: IPDetectorPluginManager.symmetricPS=Il tuo nodo si trova dietro un NAT simmetrico, che ? particolarmente problematico, quindi se non fai il forward delle porte, potresti non riuscire a connetterti alla maggior parte dei nodi! IPUndetectedUserAlert.detectingShort=Freenet sta cercando di determinare il tuo indirizzo IP esterno. IPUndetectedUserAlert.unknownAddressShort=Freenet non ha potuto determinare il tuo indirizzo IP. Potresti avere problemi a connetterti. InvalidAddressOverrideUserAlert.unknownAddressShort=Il tuo ipAddressOverride (IP impostato manualmente) ? fasullo. Per favore correggilo. MeaningfulNodeNameUserAlert.noNodeNickShort=Non ? stato impostato il nome del nodo. N2NTMUserAlert.headerShort=Messaggio da ${from} Node.buggyJVMShort=Freenet sta girando con la versione Java ${version}. Per favore aggiorna il prima possibile, la versione che usi ha pericolosi bug. Node.notUsingSunVMShort=Freenet sta girando con una JVM (Java Virtual Machine) non SUN, questo non ? raccomandato, per favore scarica la versione Sun Java corrente. Node.notUsingWrapperShort=Freenet sta girando senza "wrapper". Non ? raccomandato. Node.tooSmallMTUShort=Problemi di connessione: Il tuo MTU di connessione ? troppo basso per permettere a Freenet di lavorare correttamente. Si verificheranno dei problemi. NodeClientCore.startingUpShort=Freenet si sta avviando, non tutte le funzionalit? potrebbero essere operative e il nodo potrebbe essere lento. NodeIPDetector.maybeSymmetricShort=Problema di connessione: Potresti trovarti dietro una NAT simmetrica. NodeStat.ignoreLocalVsRemoteBandwidthLiability=Gestire le richieste locali come fossero richieste remote, per limitazioni della disponibilit? di banda? NodeStat.ignoreLocalVsRemoteBandwidthLiabilityLong=Abilita per ridurre significativamente la banda utilizzata ed aumentare leggermente la sicurezza contro i tentativi di attacchi di timing. Nella gran parte dei casi, non devi preoccuparti di essi, in quanto sono pi? probabili i "correlation attacks" (attacchi di correlazione). NodeUpdateManager.updateFailedShort=Aggiornamento fallito: ${reason} NotEnoughNiceLevelsUserAlert.short=Non abbastanza "Nice levels" disponibili! Per favore, far girare Freenet ad un "Nice Level" inferiore. OpennetUserAlert.warningShort=Modalit? insicura abilitata. PeersSayKeyBlownAlert.short=Alcuni dei tuoi nodi, dicono che la chiave di auto aggiornamento ? rovinata! PluginManager.pluginLoadingFailedShort=Impossibile caricare il plugin ${name}! PproxyToadlet.noVersion=N/A PproxyToadlet.versionTitle=Versione QueueToadlet.downloadSucceeded=Il file ${origlink}${filename}${/origlink} ? stato scaricato correttamente. ${link}Click qui${/link} per aprile il file (${size}). QueueToadlet.downloadSucceededTitle=Download effettuato: ${filename} QueueToadlet.siteUploadSucceeded=I file ${filename} (${files} ${size} total size) del tuo freesite, sono stati correttamente caricati su Freenet. ${link}Click qui${/link} per aprire l'homepage del tuo freesite. QueueToadlet.siteUploadSucceededTitle=Inserimento del Freesite eseguito: ${filename} QueueToadlet.uploadSucceeded=Il file${filename} (size ${size}) ? stato correttamente caricato su Freenet. ${link}Click qui${/link} per aprire il file. QueueToadlet.uploadSucceededTitle=Upload eseguito: ${filename} TimeSkewDetectedUserAlert.shortText=Il nodo ha rilevato una discrepanza temporale. Freenet potrebbe bloccarsi in strani modi! UpdatedVersionAvailableUserAlert.shortArmed=In nodo sta scaricando una nuova versione di Freenet e si riavvier? una volta terminato il download. UpdatedVersionAvailableUserAlert.shortNotReadyNotArmed=Il nodo sta scaricando una nuova versione di Freenet, ma necessita il vostro permesso per poterla utilizzare. UpdatedVersionAvailableUserAlert.shortReadyNotArmed=Il nodo ha scaricato una nuova versione di Freenet, ma necessita il vostro permesso per poterla utilizzare. UserAlertManager.alertsOnAlertsPage=| Controllali nella ${link}pagina delle avvertenze${/link}. UserAlertManager.clickForMore=Click su un oggetto per maggiori informazioni o per sbarazzarsene. UserAlertManager.dumpEventsButton=Rimuovi notifiche superflue UserAlertsToadlet.titleWithName=Avvertenze per ${name} WelcomeToadlet.alertsSummary=Stato delle avvertenze WrapperConfig.wrapper.java.maxmemory.long=Limite di memoria usata da Freenet. Freenet richieder? pi? memoria se possiedi un grande datastore. I cambiamenti non avranno effetto fino al prossimo riavvio del nodo Freenet. WrapperConfig.wrapper.java.maxmemory.short=Memoria massima (in megabytes) End ============================================================================== That's all. Best regards Oscar -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: freenet.l10n.it.override.properties Url: http://emu.freenetproject.org/pipermail/devl/attachments/20080503/df60c51e/attachment.txt From toad at amphibian.dyndns.org Sat May 3 20:09:16 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 21:09:16 +0100 Subject: [freenet-dev] Italian translation update In-Reply-To: <481CC474.7020600@gmail.com> References: <481CC474.7020600@gmail.com> Message-ID: <200805032109.16442.toad@amphibian.dyndns.org> On Saturday 03 May 2008 21:00, Singularity wrote: > Hi all, > > I'm a (quite) new Freenet user, > > I have updated IT translation (all incomplete and remaining strings); Applied to trunk. Please upgrade to trunk (update.sh/update.cmd testing), there are a few more strings to translate with the recent changes. Thanks! -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/fff170d1/attachment.pgp From toad at amphibian.dyndns.org Sat May 3 20:31:11 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 21:31:11 +0100 Subject: [freenet-dev] Countdown to 0.7.0 In-Reply-To: <200804292124.10612.toad@amphibian.dyndns.org> References: <200804292124.10612.toad@amphibian.dyndns.org> Message-ID: <200805032131.18025.toad@amphibian.dyndns.org> Apart from the below, we still need: - More complete translations. 1145 introduces a few new strings, but apparently we have a complete translation thanks to ph00 and Singularity. Lots of translations have been started and then stopped, and if you can do a new language in time (i.e. by Wednesday), that'd be great. - More seednodes. If you have a node with reasonable upstream bandwidth and which is not NATed, please turn on the seednode option, and send us your opennet noderef. On Tuesday 29 April 2008 21:24, Matthew Toseland wrote: > It is our intention to release 0.7.0-final late next week. > > We (myself and ian) would really appreciate any testing you can do. Please > test, test, test, let us know of any serious issues, ideally report them in > the bug tracker (https://bugs.freenetproject.org), or via FMS if you must > remain anonymous. If they have already been reported, find the old bug and > comment on it and I will see it. > > If you can do some usability testing, that's really valuable. All you do is > find somebody who hasn't used Freenet before, and get them to install a node. > Don't give them any help unless they get *really* stuck. Report their > complaints, and anywhere where they got stuck: these are bugs, but it's > probably best to report them here. > > The last lot of usability testing I did threw up a couple of biggish bugs: the > user couldn't see the bookmarks because of all the useralerts, so didn't know > what to do with Freenet; and plugin downloads were taking ages during > install. Both are fixed now. > > After 0.7.0, we will move towards 0.7.1. Thanks to Google, we have a breathing > space for 6 months, and we intend to use this to get more users by making > Freenet faster, easier to use, and more secure. In roughly that order: most > of the ease-of-use low-hanging-fruit has been dealt with for 0.7.0, which > means performance is the main thing. Security is important but some of the > big changes we need to do will take considerable time so should be postponed > for 0.8.0. > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/8034de45/attachment.pgp From esabyte at gmail.com Sat May 3 21:52:19 2008 From: esabyte at gmail.com (Singularity) Date: Sat, 03 May 2008 23:52:19 +0200 Subject: [freenet-dev] Italian translation update In-Reply-To: <200805032109.16442.toad@amphibian.dyndns.org> References: <481CC474.7020600@gmail.com> <200805032109.16442.toad@amphibian.dyndns.org> Message-ID: <481CDE93.2000204@gmail.com> Matthew Toseland ha scritto: > On Saturday 03 May 2008 21:00, Singularity wrote: > >> Hi all, >> >> I'm a (quite) new Freenet user, >> >> I have updated IT translation (all incomplete and remaining strings); >> > > Applied to trunk. Please upgrade to trunk (update.sh/update.cmd testing), > there are a few more strings to translate with the recent changes. > > Thanks! > Hi again, Updated with the new strings too. Best regards ========================================================================= Announcer.announceAlertShort=Il nodo sta cercando di connettersi alla rete, nel frattempo sar? rallentato. Announcer.announceDisabledTooOldShort=Il nodo ha tentato di connettersi alla rete ma la tua versione di Freenet ? obsoleta. Dovresti aggiornarla! BookmarkItem.bookmarkUpdatedShort=Freesite aggiornato: ${name} BuildOldAgeUserAlert.tooOldShort=Su questo nodo sta girando una versione talmente vecchia di Freenet per cui non ? nemmeno pi? possible connettersi ai propri peers. Aggiornare per favore! ClockProblemDetectedUserAlert.shortText=L'orlogio del computer non ? sincronizzato, quindi Freenet non pu? connettersi. ConfigToadlet.modeAdvanced=Opzioni avanzate di configurazione ConfigToadlet.modeAdvancedTooltip=Opzioni di configurazione che dovrebbero usare solo gli utenti avanzati di Freenet e gli sviluppatori. ConfigToadlet.modeSimple=Semplici opzioni di configurazione ConfigToadlet.modeSimpleTooltip=Opzioni di configurazione che tutti gli utenti dovrebbero conoscere. ConfigToadlet.wrapper=wrapper ConfigToadlet.wrapperSettingsTitle=Impostazioni wrapper ExtOldAgeUserAlert.extTooOldShort=Il file freenet-ext.jar ? vecchio. Per favore aggiornalo. FProxyToadlet.alerts=Messaggi di stato dettagliati FProxyToadlet.alertsTitle=Avvertenze FileOffer.failedReceiveShort=Il trasferimento di ${filename} da ${node} ? fallito. FileOffer.offeredFileShort=Il tuo amico ${node} ti sta offrendo il file ${filename}. FileOffer.succeededReceiveShort=${filename} correttamente ricevuto da ${node}. FirstTimeWizardToadlet.bwlimitHigherSpeed=Velocit? maggiore FirstTimeWizardToadlet.bwlimitLowerSpeed=Velocit? minore FirstTimeWizardToadlet.memoryLimit=Memoria utilizzata FirstTimeWizardToadlet.memoryLimitLong=Quanta memoria vuoi permettere a Freenet di utilizzare? Se hai molti download o upload in coda, Freenet necessiter? di pi? memoria. Suggeriamo di non scendere sotto i 128 Mb a meno che tu non sia realmente a corto di RAM. Se hai 1 Gb o pi?, dovresti settare almeno a 256 Mb. La modific? sar? effettiva al prossimo riavvio di Freenet. FirstTimeWizardToadlet.step6Title=Configurazione guidata del primo avvio di Freenet! - Utilizzo della memoria FirstTimeWizardToadlet.memory.128M=128Mb - minimo necessario FirstTimeWizardToadlet.memory.192M=192Mb - ragionevole di default FirstTimeWizardToadlet.memory.256M=256Mb - se hai almeno 1GB di RAM FirstTimeWizardToadlet.memory.512M=512Mb - se hai un sacco di RAM FirstTimeWizardToadlet.memory.64M=64MB - se sei davvero disperato IPDetectorPluginManager.connectionProblems=Problemi di connessione: IPDetectorPluginManager.forwardPort=Il tuo nodo sembra essere dietro qualche tipo di NAT (vedi la pagina connettivit? per dettagli). Se possibile, dovresti forwardare le porte UDP (not TCP) ${port} per migliorare la connettivit?. E' possibile comunque che tu abbia gi? provveduto; Serve del tempo a Freenet per rilevare il port forward. Leggi ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardPortMaybeForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Dovresti forwardare le porte ${port1} e ${port2} UDP (non TCP) se possibile, per migliorare la connettivit?. E' possibile che tu abbia gi? provveduto; Freenet impiega del tempo per rilevare il port forward. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardPortNotForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Dovresti forwardare la porta ${port} UDP (non TCP) se possibile, per migliorare la connettivit?. Sembra che questa porta non sia forwardata, anche se Freenet non pu? determinarlo per certo. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardPortShort=Per favore, forwardare la porta UDP ${port}. IPDetectorPluginManager.forwardPortShortMaybeForwarded=Per favore eseguire il forward della porta ${port} UDP (potresti avere gi? provedduto). IPDetectorPluginManager.forwardPortShortNotForwarded=Per favore forwardare la porta ${port} UDP (non risulta essere forwardata). IPDetectorPluginManager.forwardTwoPorts=Il tuo nodo sembra essere dietro quanlche tipo di NAT (vedi la pagina connettivit? per dettagli). Se possibile, dovresti eseguire il forward UDP (non TCP) delle porte ${port1} e ${port2} per migliorare la connettivit?. E' possibile comunque che tu abbia gi? provveduto; serve del tempo a Freenet per determinare l'avvenuto forward. Leggi ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardTwoPortsMaybeForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Dovresti forwardare le porte ${port1} e ${port2} UDP (non TCP) se possibile, per migliorare la connettivit?. E' probabile che tu abbia gi? provveduto; Freenet richiede del tempo per determinare l'avvenuto port forward. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardTwoPortsNotForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Dovresti forwardare le porte ${port1} e ${port2} UDP (non TCP) se possibile, per migliorare la connettivit?. Sembra che il forward delle porte non sia attivo, anche se Freenet non pu? determinarlo per certo. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardTwoPortsShort=Per favore, forwardare le porte UDP ${port1} e ${port2}. IPDetectorPluginManager.forwardTwoPortsShortMaybeForwarded=Effettuare il forward delle porte ${port1} e ${port2} UDP (potresti avere gi? provveduto a farlo). IPDetectorPluginManager.forwardTwoPortsShortNotForwarded=Per favore esegui il forward delle porte ${port1} e ${port2} UDP (non risultano essere forwardate). IPDetectorPluginManager.maybeAlreadyForwarded=Potresti averlo gi? fatto (? difficile per Freenet determinarlo). IPDetectorPluginManager.noConnectivityshort=Gravi problemi di connessione: Nessuna connettivit? UDP, Freenet non pu? funzionare! IPDetectorPluginManager.portForwardHelpURL=http://wiki.freenetproject.org/FirewallAndRouterIssues IPDetectorPluginManager.seriousConnectionProblems=Gravi problemi di connessione: IPDetectorPluginManager.symmetricPS=Il tuo nodo si trova dietro un NAT simmetrico, che ? particolarmente problematico, quindi se non fai il forward delle porte, potresti non riuscire a connetterti alla maggior parte dei nodi! IPUndetectedUserAlert.detectingShort=Freenet sta cercando di determinare il tuo indirizzo IP esterno. IPUndetectedUserAlert.unknownAddressShort=Freenet non ha potuto determinare il tuo indirizzo IP. Potresti avere problemi a connetterti. InvalidAddressOverrideUserAlert.unknownAddressShort=Il tuo ipAddressOverride (IP impostato manualmente) ? fasullo. Per favore correggilo. MeaningfulNodeNameUserAlert.noNodeNickShort=Non ? stato impostato il nome del nodo. N2NTMUserAlert.headerShort=Messaggio da ${from} Node.buggyJVMShort=Freenet sta girando con la versione Java ${version}. Per favore aggiorna il prima possibile, la versione che usi ha pericolosi bug. Node.notUsingSunVMShort=Freenet sta girando con una JVM (Java Virtual Machine) non SUN, questo non ? raccomandato, per favore scarica la versione Sun Java corrente. Node.notUsingWrapperShort=Freenet sta girando senza "wrapper". Non ? raccomandato. Node.tooSmallMTUShort=Problemi di connessione: Il tuo MTU di connessione ? troppo basso per permettere a Freenet di lavorare correttamente. Si verificheranno dei problemi. NodeClientCore.startingUpShort=Freenet si sta avviando, qualcosa potrebbe ancora non funzionare e il nodo potrebbe essere lento. NodeIPDetector.maybeSymmetricShort=Problema di connessione: Potresti trovarti dietro una NAT simmetrica. NodeStat.ignoreLocalVsRemoteBandwidthLiability=Gestire le richieste locali come fossero richieste remote, per limitazioni della disponibilit? di banda? NodeStat.ignoreLocalVsRemoteBandwidthLiabilityLong=Abilita per ridurre significativamente la banda utilizzata ed aumentare leggermente la sicurezza contro i tentativi di attacchi di timing. Nella gran parte dei casi, non devi preoccuparti di essi, in quanto sono pi? probabili i "correlation attacks" (attacchi di correlazione). NodeUpdateManager.updateFailedShort=Aggiornamento fallito: ${reason} NotEnoughNiceLevelsUserAlert.short=Non abbastanza "Nice levels" disponibili! Per favore, far girare Freenet ad un "Nice Level" inferiore. OpennetUserAlert.warningShort=Modalit? insicura abilitata. PeersSayKeyBlownAlert.short=Alcuni dei tuoi nodi, dicono che la chiave di auto aggiornamento ? rovinata! PluginManager.pluginLoadingFailedShort=Impossibile caricare il plugin ${name}! PproxyToadlet.noVersion=N/A PproxyToadlet.versionTitle=Versione QueueToadlet.downloadSucceeded=Il file ${origlink}${filename}${/origlink} ? stato scaricato correttamente. ${link}Click qui${/link} per aprile il file (${size}). QueueToadlet.downloadSucceededTitle=Download effettuato: ${filename} QueueToadlet.siteUploadSucceeded=I file ${filename} (${files} del tuo freesite, ${size} total size) sono stati correttamente caricati su Freenet. ${link}Click qui${/link} per aprire l'homepage del freesite. QueueToadlet.siteUploadSucceededTitle=Inserimento del Freesite avvenuto: ${filename} QueueToadlet.uploadSucceeded=Il file${filename} (size ${size}) ? stato correttamente caricato su Freenet. ${link}Click qui${/link} per aprire il file. QueueToadlet.uploadSucceededTitle=upload avvenuto: ${filename} TimeSkewDetectedUserAlert.shortText=Il nodo ha rilevato una discrepanza temporale. Freenet potrebbe bloccarsi in strani modi! UpdatedVersionAvailableUserAlert.shortArmed=In nodo sta scaricando una nuova versione di Freenet e si riavvier? una volta terminato il download. UpdatedVersionAvailableUserAlert.shortNotReadyNotArmed=Il nodo sta scaricando una nuova versione di Freenet, necessita il vostro permesso per poter utilizzare la nuova versione. UpdatedVersionAvailableUserAlert.shortReadyNotArmed=Il nodo ha scaricato una nuova versione di Freenet ma necessita il vostro permesso per poterla utilizzare. UserAlertManager.alertsOnAlertsPage=| Controllali nella ${link}pagina delle avvertenze${/link}. UserAlertManager.clickForMore=Click su un oggetto per maggiori informazioni o per sbarazzarsene. UserAlertManager.dumpEventsButton=Rimuovi notifiche superflue UserAlertsToadlet.titleWithName=Avvertenze per ${name} WelcomeToadlet.alertsSummary=Stato delle avvertenze WrapperConfig.wrapper.java.maxmemory.long=Limite di memoria usata da Freenet. Freenet richieder? pi? memoria se possiedi un grande datastore. I cambiamenti non avranno effetto fino al prossimo riavvio del nodo Freenet. WrapperConfig.wrapper.java.maxmemory.short=Memoria massima (in megabytes) End -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: freenet.l10n.it.override.properties Url: http://emu.freenetproject.org/pipermail/devl/attachments/20080503/40fc92c9/attachment.txt From toad at amphibian.dyndns.org Sat May 3 22:21:14 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Sat, 3 May 2008 23:21:14 +0100 Subject: [freenet-dev] Freenet 0.7 build 1145 Message-ID: <200805032321.19518.toad@amphibian.dyndns.org> Freenet 0.7 build 1145 is now available. Please upgrade (your node should download the new build automatically, if it doesn't tell me). Hopefully this will be the last build before 0.7.0, or at least the last one with major changes. Please test it thoroughly and report any bugs you find. Changes: - More work on the port forwarding alerts. - Some minor fproxy and queue fixes. - Activelinks for Another Index and TUFI. - Tabs at the top of the config page for simple vs advanced options. The default is determined by whether advanced mode is on. Several options moved to advanced mode, what's left should be comprehensible to any newbie. - Set the default bandwidth in the post-install wizard to 1024+/256k. This is now 16K/sec, not 24K/sec. - Translation updates (French, German, Italian). - Lots of USK fixes. Hopefully ARKs work now. - Fix MTU detection in JSTUN plugin and related code. - Lots of minor fixes and improvements to the datastore code. - Better out of memory and low memory handling. - The installer now installs a service (via a cron job) on *nix and OS/X as well as Windows. - And a few other minor fixes and code cleanups etc. Credits: batosai j16sdiz Loki (pointed out a menu bug) NEOatNHNG nextgens sdiz Singularity toad tommy -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080503/765fc67b/attachment.pgp From tommy100 at gmx.de Sun May 4 00:49:50 2008 From: tommy100 at gmx.de (Tommy[D]) Date: Sun, 04 May 2008 02:49:50 +0200 Subject: [freenet-dev] Italian translation update In-Reply-To: <481CDE93.2000204@gmail.com> References: <481CC474.7020600@gmail.com> <200805032109.16442.toad@amphibian.dyndns.org> <481CDE93.2000204@gmail.com> Message-ID: <481D082E.90509@gmx.de> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Singularity schrieb: | Matthew Toseland ha scritto: |> On Saturday 03 May 2008 21:00, Singularity wrote: |> |>> Hi all, |>> |>> I'm a (quite) new Freenet user, |>> |>> I have updated IT translation (all incomplete and remaining strings); |>> |> Applied to trunk. Please upgrade to trunk (update.sh/update.cmd testing), |> there are a few more strings to translate with the recent changes. |> |> Thanks! |> | | | Hi again, | | Updated with the new strings too. | | Best regards | Hi Singularity, seems like you changed something with this attached file (else there is something wrong on my side), but for me the file is not utf-8 encoded and therefor would create some strange chars for italian users. Could you stop freenet, delete the properties file, start freenet and do the update again? -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iJwEAQEKAAYFAkgdCC0ACgkQG7kqcTWJkGfE7gP+Lh/o0s8NyiwVykkX02zUZUlq mzQG3C9bEodAxemt+OsYdh+A/opsK1nUPL9nYKPJMx2dXn+UabG5rYBUPkng9czG yYR+IudJtoF6QzhWJ+UAdGTiK3Zz31Ww3IqXGeZvKWwVmUbIm60Wd+ymcuNemZX+ BWPEakJSBpULGMEtTy4= =4wcu -----END PGP SIGNATURE----- From nextgens at freenetproject.org Sun May 4 01:44:32 2008 From: nextgens at freenetproject.org (Florent =?iso-8859-1?Q?Daigni=E8re?=) Date: Sun, 4 May 2008 03:44:32 +0200 Subject: [freenet-dev] [freenet-cvs] r19694 - trunk/freenet/src/freenet/support/io In-Reply-To: <200805031944.26089.toad@amphibian.dyndns.org> References: <20080503114802.24217478D98@freenetproject.org> <200805031944.26089.toad@amphibian.dyndns.org> Message-ID: <20080504014430.GA3475@freenetproject.org> * Matthew Toseland [2008-05-03 19:44:25]: > On Saturday 03 May 2008 12:48, nextgens at freenetproject.org wrote: > > Author: nextgens > > Date: 2008-05-03 11:48:01 +0000 (Sat, 03 May 2008) > > New Revision: 19694 > > > > Modified: > > > trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > > Log: > > Don't instanciate a new MT; use the existing one. > > Does this mean we use the MT for key generation? We ought to use Yarrow for > that. > > No, we pass two PRNGs to the factory, one of which will be used for padding and the other for key generation... At least that's the idea. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080504/62bae3fd/attachment.pgp From nextgens at freenetproject.org Sun May 4 01:57:25 2008 From: nextgens at freenetproject.org (Florent =?iso-8859-1?Q?Daigni=E8re?=) Date: Sun, 4 May 2008 03:57:25 +0200 Subject: [freenet-dev] [freenet-cvs] r19693 - trunk/freenet/src/freenet/support/io In-Reply-To: <200805031943.37365.toad@amphibian.dyndns.org> References: <20080503114509.CE2C5478D7B@freenetproject.org> <200805031943.37365.toad@amphibian.dyndns.org> Message-ID: <20080504015724.GB3475@freenetproject.org> * Matthew Toseland [2008-05-03 19:43:37]: > On Saturday 03 May 2008 12:45, nextgens at freenetproject.org wrote: > > Author: nextgens > > Date: 2008-05-03 11:45:09 +0000 (Sat, 03 May 2008) > > New Revision: 19693 > > > > Modified: > > > trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > > Log: > > Some paranoia (flush() before close() just in case a BufferedOutputStream is > catching exceptions) > > Shouldn't you catch and log the exception from flush()? I don't think so... If it throws it's fine by me -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080504/50808359/attachment.pgp From j16sdiz+freenet at gmail.com Sun May 4 08:42:08 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Sun, 4 May 2008 16:42:08 +0800 Subject: [freenet-dev] [freenet-cvs] r19675 - in trunk/freenet/src/freenet: crypt node store support In-Reply-To: <200805032004.09203.toad@amphibian.dyndns.org> References: <20080502101013.00472479738@freenetproject.org> <200805032004.09203.toad@amphibian.dyndns.org> Message-ID: On Sun, May 4, 2008 at 3:04 AM, Matthew Toseland wrote: > On Friday 02 May 2008 11:10, j16sdiz at freenetproject.org wrote: > > > > Author: j16sdiz > > Date: 2008-05-02 10:10:12 +0000 (Fri, 02 May 2008) > > New Revision: 19675 > > > > Modified: > > trunk/freenet/src/freenet/crypt/SHA256.java > > trunk/freenet/src/freenet/node/MemoryChecker.java > > trunk/freenet/src/freenet/node/Node.java > > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > trunk/freenet/src/freenet/support/OOMHandler.java > > trunk/freenet/src/freenet/support/OOMHook.java > > Log: > > alternative low memory / out of memory handling > > > > Modified: trunk/freenet/src/freenet/crypt/SHA256.java > > =================================================================== > > --- trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:09:13 UTC (rev > 19674) > > +++ trunk/freenet/src/freenet/crypt/SHA256.java 2008-05-02 10:10:12 UTC (rev > 19675) > > @@ -44,6 +44,8 @@ > > import freenet.node.Node; > > import freenet.node.NodeInitException; > > import freenet.support.Logger; > > +import freenet.support.OOMHandler; > > +import freenet.support.OOMHook; > > import freenet.support.io.Closer; > > > > /** > > @@ -105,7 +107,7 @@ > > String algo = md256.getAlgorithm(); > > if(!(algo.equals("SHA-256") || algo.equals("SHA256"))) > > throw new IllegalArgumentException("Should be SHA-256 but is " + algo); > > - if (digests.size() > 16) // don't cache too many of them > > + if (digests.size() > 16 || noCache) // don't cache too many of them > > return; > > md256.reset(); > > digests.add(md256); > > @@ -121,4 +123,20 @@ > > public static int getDigestLength() { > > return HASH_SIZE; > > } > > + > > + private static boolean noCache = false; > > + > > + static { > > + OOMHandler.addOOMHook(new OOMHook() { > > + public void handleLowMemory() throws Exception { > > + digests.clear(); > > + noCache = true; > > + } > > + > > + public void handleOutOfMemory() throws Exception { > > + digests.clear(); > > + noCache = true; > > + } > > + }); > > + } > > } > > So when we reach the memory limit, we turn off caching and get more churn and > therefore hit it more quickly ... well I suppose it's a tradeoff. > > > > > Modified: trunk/freenet/src/freenet/node/MemoryChecker.java > > =================================================================== > > --- trunk/freenet/src/freenet/node/MemoryChecker.java 2008-05-02 10:09:13 > UTC (rev 19674) > > +++ trunk/freenet/src/freenet/node/MemoryChecker.java 2008-05-02 10:10:12 > UTC (rev 19675) > > @@ -4,6 +4,7 @@ > > package freenet.node; > > > > import freenet.support.Logger; > > +import freenet.support.OOMHandler; > > import freenet.support.SizeUtil; > > > > public class MemoryChecker implements Runnable { > > @@ -42,6 +43,11 @@ > > > > Logger.normal(this, "Memory in > use: "+SizeUtil.formatSize((r.totalMemory()-r.freeMemory()))); > > > > + if (r.freeMemory() < 4096 * 1024 * 1024) { // free memory < 8 MB > > + Logger.error(this, "memory too low, trying to free some"); > > + OOMHandler.lowMemory(); > > + } > > + > > I've changed this to do a GC and then re-check. If we are still at the limit > for total memory and have less than 8MB free, *then* we hit the low memory > handler. The problem is, when OutOfMemoryError is thrown, it's too late to recover. We can't control where OutOfMemory occur, When I say "can't control", I really mean it. For example, if it occur in BDBFS, the database may have corrupted, transaction can't be aborted, etc.. what if OOM occur which Vector trying to resize itself? Besides these, JIT may allocate memory, finalization need memory, even GC can take some memory. Btw, -server vm do GC all the time, not just when it hit the limit[1]. It just try a bit harder then it's close to the limit. There are lots of tunable for this.... [1] http://java.sun.com/javase/technologies/hotspot/gc/gc_tuning_6.html > > I'm not entirely convinced though. We will end up doing a lot more full GCs > this way ... often on systems that don't have a memory problem. > If you read the documentation from java, you will see it's recommended _not_ to set -Xms = -Xmx .. It's because each full GC cost less time to finish if you do it more often. If you set Xms=Xmx, full gc will kick in only when memory is really full -- too much object to collect, cost lots of latency. From j16sdiz+freenet at gmail.com Sun May 4 09:00:08 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Sun, 4 May 2008 17:00:08 +0800 Subject: [freenet-dev] [freenet-cvs] r19674 - trunk/freenet/src/freenet/crypt In-Reply-To: <200805032005.52808.toad@amphibian.dyndns.org> References: <20080502100913.BD7E34790AB@freenetproject.org> <200805032005.52808.toad@amphibian.dyndns.org> Message-ID: On Sun, May 4, 2008 at 3:05 AM, Matthew Toseland wrote: > On Friday 02 May 2008 11:09, j16sdiz at freenetproject.org wrote: > > Author: j16sdiz > > Date: 2008-05-02 10:09:13 +0000 (Fri, 02 May 2008) > > New Revision: 19674 > > > > Modified: > > trunk/freenet/src/freenet/crypt/SHA256.java > > Log: > > limit number of cached SHA256 md > > Any particular reason for a limit of 16? We use a lot of SHA256's... > 0) This is part of my "use lessor memory" patches 1) 16 is the number of SHA-256 keep in the pool. Instances in use are not counted here.. 2) We use lots of SHA256, but we don't use them at the same time. (obviously we can't do more SHA256 then number of CPU) 3) Most SHA256 instance return to pool very quickly, no thread should keep a SHA256 instance for a long time. 4) (follow #2, #3) keeping more then # of CPU copies sounds redundant to me 5) It never use more then 12 instance on my box. From j16sdiz+freenet at gmail.com Sun May 4 10:20:24 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Sun, 4 May 2008 18:20:24 +0800 Subject: [freenet-dev] [freenet-cvs] r19685 - trunk/freenet/src/freenet/store In-Reply-To: <200805031940.35326.toad@amphibian.dyndns.org> References: <20080502160608.DF98347B2B0@freenetproject.org> <200805031940.35326.toad@amphibian.dyndns.org> Message-ID: On Sun, May 4, 2008 at 2:40 AM, Matthew Toseland wrote: > On Friday 02 May 2008 17:06, j16sdiz at freenetproject.org wrote: > > Author: j16sdiz > > Date: 2008-05-02 16:06:08 +0000 (Fri, 02 May 2008) > > New Revision: 19685 > > > > Modified: > > trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > Log: > > revert r19683, it just doesn't work > > Why not? > The getCacheSize() always give 0. From vdenisov at redline.ru Sun May 4 10:44:06 2008 From: vdenisov at redline.ru (Victor Denisov) Date: Sun, 04 May 2008 14:44:06 +0400 Subject: [freenet-dev] Countdown to 0.7.0 In-Reply-To: <200805032131.18025.toad@amphibian.dyndns.org> References: <200804292124.10612.toad@amphibian.dyndns.org> <200805032131.18025.toad@amphibian.dyndns.org> Message-ID: <481D9376.8010404@redline.ru> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 | - More seednodes. If you have a node with reasonable upstream bandwidth and | which is not NATed, please turn on the seednode option, and send us your | opennet noderef. I'll move my node to a new box tomorrow, it has a symmetric 8 Mbit/s bandwidth limits, I can probably dedicate 2-4 Mbit/s to Freenet - would that be enough? Also, the box would be restarted about twice a day (but otherwise should be pretty stable) - is that a problem? Regards, Victor Denisov. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFIHZNlS81Mh9/iCDgRAjRrAJ4x2/TFjylaEP+cYdPVIMIKFlBjZwCcCArG Gxk+vCrE6C7YB5RyQFRFuGE= =Fsjd -----END PGP SIGNATURE----- From j16sdiz+freenet at gmail.com Sun May 4 14:51:06 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Sun, 4 May 2008 22:51:06 +0800 Subject: [freenet-dev] [freenet-cvs] r19675 - in trunk/freenet/src/freenet: crypt node store support In-Reply-To: <200805032004.09203.toad@amphibian.dyndns.org> References: <20080502101013.00472479738@freenetproject.org> <200805032004.09203.toad@amphibian.dyndns.org> Message-ID: On Sun, May 4, 2008 at 3:04 AM, Matthew Toseland wrote: > > > > int sleeptime = aggressiveGCModificator; > > if(sleeptime <= 0) { // We are done > > ps.queueTimedJob(this, 120 * 250); // 30 sec > > > > Modified: trunk/freenet/src/freenet/node/Node.java > > =================================================================== > > --- trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:09:13 UTC (rev > 19674) > > +++ trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:10:12 UTC (rev > 19675) > > @@ -124,7 +124,7 @@ > > /** > > * @author amphibian > > */ > > -public class Node implements TimeSkewDetectorCallback, GetPubkey, OOMHook { > > +public class Node implements TimeSkewDetectorCallback, GetPubkey { > > > > private static boolean logMINOR; > > > > @@ -1604,8 +1604,6 @@ > > e.printStackTrace(); > > throw new > NodeInitException(NodeInitException.EXIT_COULD_NOT_START_UPDATER, "Could not > create Updater: "+e); > > } > > - > > - OOMHandler.addOOMHook(this); > > > > Logger.normal(this, "Node constructor completed"); > > System.out.println("Node constructor completed"); > > @@ -3306,23 +3304,4 @@ > > public void setDispatcherHook(NodeDispatcherCallback cb) { > > this.dispatcher.setHook(cb); > > } > > - > > - /** > > - * Free some memory > > - */ > > - public void handleOOM() throws Exception { > > - if (cachedPubKeys != null) { > > - Object value; > > - do { > > - value = cachedPubKeys.popKey(); > > - } while (value != null); > > - } > > - if (recentlyCompletedIDs != null) { > > - synchronized (recentlyCompletedIDs) { > > - // half it size > > - while (recentlyCompletedIDs.size() > MAX_RECENTLY_COMPLETED_IDS / 2) > > - recentlyCompletedIDs.pop(); > > - } > > - } > > - } > > } > > Why did you delete the pubkey cache clearing OOM hook? > > I deleted that because I introduced that but I am not sure if this clearing is safe. IMO, the current OOMHook free too few memory. I wanted to introduce some more hooks, but have no idea where it is safe to be done. If you have any suggestions, please tell. From nextgens at freenetproject.org Sun May 4 14:54:42 2008 From: nextgens at freenetproject.org (Florent =?iso-8859-1?Q?Daigni=E8re?=) Date: Sun, 4 May 2008 16:54:42 +0200 Subject: [freenet-dev] [freenet-cvs] r19675 - in trunk/freenet/src/freenet: crypt node store support In-Reply-To: References: <20080502101013.00472479738@freenetproject.org> <200805032004.09203.toad@amphibian.dyndns.org> Message-ID: <20080504145440.GD3475@freenetproject.org> * Daniel Cheng [2008-05-04 22:51:06]: > On Sun, May 4, 2008 at 3:04 AM, Matthew Toseland > wrote: > > > > > > > int sleeptime = aggressiveGCModificator; > > > if(sleeptime <= 0) { // We are done > > > ps.queueTimedJob(this, 120 * 250); // 30 sec > > > > > > Modified: trunk/freenet/src/freenet/node/Node.java > > > =================================================================== > > > --- trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:09:13 UTC (rev > > 19674) > > > +++ trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:10:12 UTC (rev > > 19675) > > > @@ -124,7 +124,7 @@ > > > /** > > > * @author amphibian > > > */ > > > -public class Node implements TimeSkewDetectorCallback, GetPubkey, OOMHook { > > > +public class Node implements TimeSkewDetectorCallback, GetPubkey { > > > > > > private static boolean logMINOR; > > > > > > @@ -1604,8 +1604,6 @@ > > > e.printStackTrace(); > > > throw new > > NodeInitException(NodeInitException.EXIT_COULD_NOT_START_UPDATER, "Could not > > create Updater: "+e); > > > } > > > - > > > - OOMHandler.addOOMHook(this); > > > > > > Logger.normal(this, "Node constructor completed"); > > > System.out.println("Node constructor completed"); > > > @@ -3306,23 +3304,4 @@ > > > public void setDispatcherHook(NodeDispatcherCallback cb) { > > > this.dispatcher.setHook(cb); > > > } > > > - > > > - /** > > > - * Free some memory > > > - */ > > > - public void handleOOM() throws Exception { > > > - if (cachedPubKeys != null) { > > > - Object value; > > > - do { > > > - value = cachedPubKeys.popKey(); > > > - } while (value != null); > > > - } > > > - if (recentlyCompletedIDs != null) { > > > - synchronized (recentlyCompletedIDs) { > > > - // half it size > > > - while (recentlyCompletedIDs.size() > MAX_RECENTLY_COMPLETED_IDS / 2) > > > - recentlyCompletedIDs.pop(); > > > - } > > > - } > > > - } > > > } > > > > Why did you delete the pubkey cache clearing OOM hook? > > > > > > I deleted that because I introduced that but I am not sure if this > clearing is safe. > IMO, the current OOMHook free too few memory. I wanted to introduce > some more hooks, but have no idea where it is safe to be done. If you > have any suggestions, please tell. Get rid of unclaimed messages, limit the number of concurrent FECRunner threads. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080504/871a22b9/attachment.pgp From esabyte at gmail.com Sun May 4 15:20:02 2008 From: esabyte at gmail.com (Singularity) Date: Sun, 04 May 2008 17:20:02 +0200 Subject: [freenet-dev] Devl Digest, Vol 32, Issue 7 In-Reply-To: References: Message-ID: <481DD422.5010503@gmail.com> Hi again Toad, I've restarted the node (and deleted .properties) as you suggested and re-applied updates; sorry for the inconvenience. ****************************************************************************** BookmarkEditorToadlet.pasteOrCancel=Click su un'icona incolla o cancella. ConfigToadlet.modeAdvanced=Opzioni di configurazione avanzate ConfigToadlet.modeAdvancedTooltip=Opzioni di configurazione che solo gli utenti avanzati di Freenet e gli sviluppatori dovrebbero utilizzare. ConfigToadlet.modeSimple=Opzioni di configurazione semplici ConfigToadlet.modeSimpleTooltip=Opzioni di configurazione che tutti gli utenti dovrebbero conoscere IPDetectorPluginManager.forwardPortMaybeForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Se possibile dovresti effettuare il forward della porta UDP (non TCP) ${port} per migliorare la connettivit?. E' comunque possibile che tu abbia gi? provveduto; Freenet necessita di tempo per rilevare che il port forward sia attivo. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardPortNotForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Se possible dovresti effettuare il forward della porta UDP (non TCP) ${port} per migliorare la connettivit?. Sembra che il forward delle porte non sia attivo, anche se Freenet non ? in grado di determinarlo per certo. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardPortShortMaybeForwarded=Per favore effettuare il forward della porta ${port} (potresti aver gi? provveduto). IPDetectorPluginManager.forwardPortShortNotForwarded=Effettuare il forward della porta ${port} (il forward non sembra essere attivo). IPDetectorPluginManager.forwardTwoPortsMaybeForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Se possibile dovresti effettuare il forward delle porte UDP (non TCP) ${port1} e ${port2} per migliorare la connettivit?. E' possibile che tu abbia gi? provveduto; Serve del tempo a Freenet per determinare che il port forward sia attivo. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardTwoPortsNotForwarded=Il tuo nodo sembra trovarsi dietro qualche tipo di NAT (controlla la pagina connettivit? per dettagli). Se possibile dovresti effettuare il forward delle porte UDP (non TCP) ${port1} e ${port2} per migliorare la connettivit?. Sembra che il forward delle porte non sia attivo, anche se Freenet non ? in grado di determinarlo per certo. Controlla ${link}qui${/link} per ulteriori informazioni. IPDetectorPluginManager.forwardTwoPortsShortMaybeForwarded=Per favore effettuare il forward delle porte ${port1} e ${port2} UDP. (potresti aver gi? provveduto). IPDetectorPluginManager.forwardTwoPortsShortNotForwarded=Per favore effettuare il forward delle porte UDP ${port1} e ${port2} (il forward delle porte non risulta attivo). IPDetectorPluginManager.maybeAlreadyForwarded=Potresti aver gi? provveduto (E' difficile per Freenet determinarlo). TimeSkewDetectedUserAlert.text=Una discrepanza temporale ? stata rilevata dal nodo. Questo ? un inconveniente grave, il nodo non potr? funzionare correttamente finch? non vi si sar? ovviato. Tra le cause pi? comuni, la modalit? powersafe mal configurata, cattiva sincronizzazione tra i clients del network, hardware bugs. End ******************************************************************************************************* -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: freenet.l10n.it.override.properties Url: http://emu.freenetproject.org/pipermail/devl/attachments/20080504/a1e99cde/attachment.txt From tommy100 at gmx.de Sun May 4 16:16:17 2008 From: tommy100 at gmx.de (Tommy[D]) Date: Sun, 04 May 2008 18:16:17 +0200 Subject: [freenet-dev] Devl Digest, Vol 32, Issue 7 In-Reply-To: <481DD422.5010503@gmail.com> References: <481DD422.5010503@gmail.com> Message-ID: <481DE151.40707@gmx.de> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Singularity schrieb: | Hi again Toad, | | I've restarted the node (and deleted .properties) as you suggested and | re-applied updates; sorry for the inconvenience. | It was me and not Toad who answered you ;-) The file now looks good, i submitted it. Thanks for your contribution. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iJwEAQEKAAYFAkgd4VEACgkQG7kqcTWJkGcshwQAgwAS0MPMY7trfdzJLYeRzGnV kVCeRMYitqwbW3krk17gpA7keVHnHQrBhET45/qUe7tk+KzlAOlQFVP//ceNJ6XG wcI8xqLmm0pkP5uOMWVwN17XaLdFo9kkehszbupCTRtw+PzxYnABGsRNSBRj1jJU Nd1Fec2ZlC/rtHuWDvE= =Stwl -----END PGP SIGNATURE----- From robert at freenetproject.org Mon May 5 15:35:14 2008 From: robert at freenetproject.org (Robert Hailey) Date: Mon, 5 May 2008 10:35:14 -0500 Subject: [freenet-dev] [freenet-cvs] r19685 - trunk/freenet/src/freenet/store In-Reply-To: References: <20080502160608.DF98347B2B0@freenetproject.org> <200805031940.35326.toad@amphibian.dyndns.org> Message-ID: <7C8CE47C-8DE0-4615-A354-C60DF13527DC@freenetproject.org> On May 4, 2008, at 5:20 AM, Daniel Cheng wrote: > On Sun, May 4, 2008 at 2:40 AM, Matthew Toseland > wrote: >> On Friday 02 May 2008 17:06, j16sdiz at freenetproject.org wrote: >>> Author: j16sdiz >>> Date: 2008-05-02 16:06:08 +0000 (Fri, 02 May 2008) >>> New Revision: 19685 >>> >>> Modified: >>> trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java >>> Log: >>> revert r19683, it just doesn't work >> >> Why not? >> > > The getCacheSize() always give 0. I think Toad just said zero meant unlimited. Maybe that is the very bug you are chasing, it is using unlimited memory? -- Robert Hailey From j16sdiz+freenet at gmail.com Mon May 5 15:48:13 2008 From: j16sdiz+freenet at gmail.com (Daniel Cheng) Date: Mon, 5 May 2008 23:48:13 +0800 Subject: [freenet-dev] [freenet-cvs] r19685 - trunk/freenet/src/freenet/store In-Reply-To: <7C8CE47C-8DE0-4615-A354-C60DF13527DC@freenetproject.org> References: <20080502160608.DF98347B2B0@freenetproject.org> <200805031940.35326.toad@amphibian.dyndns.org> <7C8CE47C-8DE0-4615-A354-C60DF13527DC@freenetproject.org> Message-ID: On Mon, May 5, 2008 at 11:35 PM, Robert Hailey wrote: > On May 4, 2008, at 5:20 AM, Daniel Cheng wrote: > > > On Sun, May 4, 2008 at 2:40 AM, Matthew Toseland > > wrote: > >> On Friday 02 May 2008 17:06, j16sdiz at freenetproject.org wrote: > >>> Author: j16sdiz > >>> Date: 2008-05-02 16:06:08 +0000 (Fri, 02 May 2008) > >>> New Revision: 19685 > >>> > >>> Modified: > >>> trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > >>> Log: > >>> revert r19683, it just doesn't work > >> > >> Why not? > >> > > > > The getCacheSize() always give 0. > > > I think Toad just said zero meant unlimited. Maybe that is the very > bug you are chasing, it is using unlimited memory? javadoc say setCacheSize(0) would use getCachePrecent() % of Runtime#getMaxMemory(). From toad at amphibian.dyndns.org Mon May 5 17:52:41 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Mon, 5 May 2008 18:52:41 +0100 Subject: [freenet-dev] Italian translation update In-Reply-To: <481D082E.90509@gmx.de> References: <481CC474.7020600@gmail.com> <481CDE93.2000204@gmail.com> <481D082E.90509@gmx.de> Message-ID: <200805051852.41706.toad@amphibian.dyndns.org> On Sunday 04 May 2008 01:49, Tommy[D] wrote: > Singularity schrieb: > | Matthew Toseland ha scritto: > |> On Saturday 03 May 2008 21:00, Singularity wrote: > |> > |>> Hi all, > |>> > |>> I'm a (quite) new Freenet user, > |>> > |>> I have updated IT translation (all incomplete and remaining strings); > |>> > |> Applied to trunk. Please upgrade to trunk (update.sh/update.cmd testing), > |> there are a few more strings to translate with the recent changes. > |> > |> Thanks! > |> > | > | > | Hi again, > | > | Updated with the new strings too. > | > | Best regards > | > Hi Singularity, > > seems like you changed something with this attached file (else there is something wrong on my side), > but for me the file is not utf-8 encoded and therefor would create some strange chars for italian > users. Could you stop freenet, delete the properties file, start freenet and do the update again? That's very odd. Is it broken in trunk? -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080505/ab75db26/attachment.pgp From toad at amphibian.dyndns.org Mon May 5 17:53:29 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Mon, 5 May 2008 18:53:29 +0100 Subject: [freenet-dev] [freenet-cvs] r19674 - trunk/freenet/src/freenet/crypt In-Reply-To: References: <20080502100913.BD7E34790AB@freenetproject.org> <200805032005.52808.toad@amphibian.dyndns.org> Message-ID: <200805051853.30414.toad@amphibian.dyndns.org> On Sunday 04 May 2008 10:00, Daniel Cheng wrote: > On Sun, May 4, 2008 at 3:05 AM, Matthew Toseland > wrote: > > On Friday 02 May 2008 11:09, j16sdiz at freenetproject.org wrote: > > > Author: j16sdiz > > > Date: 2008-05-02 10:09:13 +0000 (Fri, 02 May 2008) > > > New Revision: 19674 > > > > > > Modified: > > > trunk/freenet/src/freenet/crypt/SHA256.java > > > Log: > > > limit number of cached SHA256 md > > > > Any particular reason for a limit of 16? We use a lot of SHA256's... > > > > 0) This is part of my "use lessor memory" patches > > 1) 16 is the number of SHA-256 keep in the pool. > Instances in use are not counted here.. > > 2) We use lots of SHA256, but we don't use them at the same time. > (obviously we can't do more SHA256 then number of CPU) > > 3) Most SHA256 instance return to pool very quickly, no thread > should keep a SHA256 instance for a long time. > > 4) (follow #2, #3) keeping more then # of CPU copies sounds redundant to me > > 5) It never use more then 12 instance on my box. Okay, if you've measured it then we'll go with it. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080505/89684f26/attachment.pgp From toad at amphibian.dyndns.org Mon May 5 17:54:57 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Mon, 5 May 2008 18:54:57 +0100 Subject: [freenet-dev] =?utf-8?q?=5Bfreenet-cvs=5D_r19694_-=09trunk/freene?= =?utf-8?q?t/src/freenet/support/io?= In-Reply-To: <20080504014430.GA3475@freenetproject.org> References: <20080503114802.24217478D98@freenetproject.org> <200805031944.26089.toad@amphibian.dyndns.org> <20080504014430.GA3475@freenetproject.org> Message-ID: <200805051854.57607.toad@amphibian.dyndns.org> On Sunday 04 May 2008 02:44, Florent Daigni?re wrote: > * Matthew Toseland [2008-05-03 19:44:25]: > > > On Saturday 03 May 2008 12:48, nextgens at freenetproject.org wrote: > > > Author: nextgens > > > Date: 2008-05-03 11:48:01 +0000 (Sat, 03 May 2008) > > > New Revision: 19694 > > > > > > Modified: > > > > > trunk/freenet/src/freenet/support/io/PaddedEphemerallyEncryptedBucket.java > > > Log: > > > Don't instanciate a new MT; use the existing one. > > > > Does this mean we use the MT for key generation? We ought to use Yarrow for > > that. > > > > > No, we pass two PRNGs to the factory, one of which will be used for > padding and the other for key generation... At least that's the idea. > Not true after your changes. Please reinstate the strong RandomSource for key generation. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080505/3dee061e/attachment.pgp From toad at amphibian.dyndns.org Mon May 5 17:56:39 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Mon, 5 May 2008 18:56:39 +0100 Subject: [freenet-dev] [freenet-cvs] r19685 - trunk/freenet/src/freenet/store In-Reply-To: References: <20080502160608.DF98347B2B0@freenetproject.org> <7C8CE47C-8DE0-4615-A354-C60DF13527DC@freenetproject.org> Message-ID: <200805051856.40676.toad@amphibian.dyndns.org> On Monday 05 May 2008 16:48, Daniel Cheng wrote: > On Mon, May 5, 2008 at 11:35 PM, Robert Hailey > wrote: > > On May 4, 2008, at 5:20 AM, Daniel Cheng wrote: > > > > > On Sun, May 4, 2008 at 2:40 AM, Matthew Toseland > > > wrote: > > >> On Friday 02 May 2008 17:06, j16sdiz at freenetproject.org wrote: > > >>> Author: j16sdiz > > >>> Date: 2008-05-02 16:06:08 +0000 (Fri, 02 May 2008) > > >>> New Revision: 19685 > > >>> > > >>> Modified: > > >>> trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java > > >>> Log: > > >>> revert r19683, it just doesn't work > > >> > > >> Why not? > > > > > > The getCacheSize() always give 0. > > > > I think Toad just said zero meant unlimited. Maybe that is the very > > bug you are chasing, it is using unlimited memory? > > javadoc say setCacheSize(0) would use getCachePrecent() % of > Runtime#getMaxMemory(). Practice says otherwise. Maybe we're missing something? -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://emu.freenetproject.org/pipermail/devl/attachments/20080505/83de3d8b/attachment.pgp From toad at amphibian.dyndns.org Mon May 5 17:58:37 2008 From: toad at amphibian.dyndns.org (Matthew Toseland) Date: Mon, 5 May 2008 18:58:37 +0100 Subject: [freenet-dev] [freenet-cvs] r19675 - in trunk/freenet/src/freenet: crypt node store support In-Reply-To: References: <20080502101013.00472479738@freenetproject.org> <200805032004.09203.toad@amphibian.dyndns.org> Message-ID: <200805051858.37542.toad@amphibian.dyndns.org> On Sunday 04 May 2008 15:51, Daniel Cheng wrote: > On Sun, May 4, 2008 at 3:04 AM, Matthew Toseland > wrote: > > > > > > > int sleeptime = aggressiveGCModificator; > > > if(sleeptime <= 0) { // We are done > > > ps.queueTimedJob(this, 120 * 250); // 30 sec > > > > > > Modified: trunk/freenet/src/freenet/node/Node.java > > > =================================================================== > > > --- trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:09:13 UTC (rev > > 19674) > > > +++ trunk/freenet/src/freenet/node/Node.java 2008-05-02 10:10:12 UTC (rev > > 19675) > > > @@ -124,7 +124,7 @@ > > > /** > > > * @author amphibian > > > */ > > > -public class Node implements TimeSkewDetectorCallback, GetPubkey, OOMHook { > > > +public class Node implements TimeSkewDetectorCallback, GetPubkey { > > > > > > private static boolean logMINOR; > > > > > > @@ -1604,8 +1604,6 @@ > > > e.printStackTrace(); > > > throw new > > NodeInitException(NodeInitException.EXIT_COULD_NOT_START_UPDATER, "Could not > > create Updater: "+e); > > > } > > > - > > > - OOMHandler.addOOMHook(this); > > > > > > Logger.normal(this, "Node constructor completed"); > > > System.out.println("Node constructor completed"); > > > @@ -3306,23 +3304,4 @@ > > > public void setDispatcherHook(NodeDispatcherCallback cb) { > > > this.dispatcher.setHook(cb); > > > } > > > - > > > - /** > > > - * Free some memory > > > - */ > > > - public void handleOOM() throws Exception { > > > - if (cachedPubKeys != null) { > > > - Object value; > > > - do { > > > - value = cachedPubKeys.popKey(); > > > - } while (value != null); > > > - } > > > - if (recentlyCompletedIDs != null) { > > > - synchronized (recentlyCompletedIDs) { > > > - // half it size > > > - while (recentlyCompletedIDs.size() > MAX_RECENTLY_COMPLETED_IDS / 2) > > > - recentlyCompletedIDs.pop(); > > > -