*"RC = 500 : Direct buffer memory"* only occured when Fuseki started with "exec java -Xmx1200M -jar ...".
When I use *"exec java -Xmx2400M -jar ..."* even without * -XX:MaxDirectMemorySize* or *jetty_config.xml*, the client shows 18 results and stops (no exception occurs). The server gives no error. Client output: java -cp jena-fuseki-0.2.1-incubating-server.jar:. Query2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Server log: ... 12:24:48 INFO Fuseki :: [251] OK/select 12:24:48 INFO Fuseki :: [251] 200 OK 12:24:48 INFO Fuseki :: [252] GET http://fuseki.mooo.com:8080/dbpedia-geo/sparql?query=SELECT++*%0AWHERE%0A++%7B+%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FNorth_Versailles_Township%252C_Allegheny_County%252C_Pennsylvania%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23lat%3E+%3Flat+.%0A++++%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FNorth_Versailles_Township%252C_Allegheny_County%252C_Pennsylvania%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23long%3E+%3Flong%0A++%7D%0A 12:24:48 INFO Fuseki :: [252] Query = SELECT * WHERE { < http://dbpedia.org/resource/North_Versailles_Township%2C_Allegheny_County%2C_Pennsylvania> <http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat . < http://dbpedia.org/resource/North_Versailles_Township%2C_Allegheny_County%2C_Pennsylvania> <http://www.w3.org/2003/01/geo/wgs84_pos#long> ?long } 12:24:48 INFO Fuseki :: [252] OK/select 12:24:48 INFO Fuseki :: [252] 200 OK Regards, Regis. 2012/4/13 Regis Pires Magalhães <regispires...@gmail.com> > Andy, > Thank you again! > > In my tests: > > 1 - Starting Fuseki with "exec java > *-XX:MaxDirectMemorySize=2147483648-Xmx4800M > * -jar ..." shows only 18 results again and the client stops and doesn't > show any result. > > Server log: > ... > 11:55:59 INFO Fuseki :: [251] Query = SELECT * WHERE { < > http://dbpedia.org/resource/Penn_Hills_Township%2C_Allegheny_County%2C_Pennsylvania> > <http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat . < > http://dbpedia.org/resource/Penn_Hills_Township%2C_Allegheny_County%2C_Pennsylvania> > <http://www.w3.org/2003/01/geo/wgs84_pos#long> ?long } > 11:55:59 INFO Fuseki :: [251] OK/select > 11:55:59 INFO Fuseki :: [251] 200 OK > 11:55:59 INFO Fuseki :: [252] GET > http://fuseki.mooo.com:8080/dbpedia-geo/sparql?query=SELECT++*%0AWHERE%0A++%7B+%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FNorth_Versailles_Township%252C_Allegheny_County%252C_Pennsylvania%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23lat%3E+%3Flat+.%0A++++%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FNorth_Versailles_Township%252C_Allegheny_County%252C_Pennsylvania%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23long%3E+%3Flong%0A++%7D%0A > 11:55:59 INFO Fuseki :: [252] Query = SELECT * WHERE { < > http://dbpedia.org/resource/North_Versailles_Township%2C_Allegheny_County%2C_Pennsylvania> > <http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat . < > http://dbpedia.org/resource/North_Versailles_Township%2C_Allegheny_County%2C_Pennsylvania> > <http://www.w3.org/2003/01/geo/wgs84_pos#long> ?long } > 11:55:59 INFO Fuseki :: [252] OK/select > 11:55:59 INFO Fuseki :: [252] 200 OK > > > 2 - Using *S**electChannelConnector* with the suggested configuration: it > seems that the server answers the first request, but the client stops and > doesn't show any result. > > Server log: > ... > 11:22:41 INFO Server :: Jetty server config file = > jetty-config.xml > 11:22:42 INFO Server :: Dataset path = /dblp > 11:22:42 INFO Server :: Dataset path = /dailymed > 11:22:42 INFO Server :: Dataset path = /diseasome > 11:22:42 INFO Server :: Dataset path = /drugbank > 11:22:42 INFO Server :: Dataset path = /sider > 11:22:42 INFO Server :: Dataset path = /researchers > 11:22:42 INFO Server :: Dataset path = /books > 11:22:42 INFO Server :: Dataset path = /lgd-dbpedia > 11:22:42 INFO Server :: Dataset path = /dbpedia-geo > 11:22:42 INFO Server :: Fuseki 0.2.1-incubating-SNAPSHOT > 11:22:42 INFO Server :: Jetty 7.x.y-SNAPSHOT > 11:22:42 INFO Server :: Started 2012/04/13 11:22:42 BRT on > port 8080 > 11:22:49 INFO Fuseki :: [1] GET > http://fuseki.mooo.com:8080/lgd-dbpedia/sparql?query=SELECT++*%0AWHERE%0A++%7B+%3Fs+%3Chttp%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23sameAs%3E+%3Fgeo%0A++++FILTER+regex%28str%28%3Fgeo%29%2C+%22dbpedia%22%29%0A++%7D%0A > 11:22:49 INFO Fuseki :: [1] Query = SELECT * WHERE { ?s < > http://www.w3.org/2002/07/owl#sameAs> ?geo FILTER regex(str(?geo), > "dbpedia") } > 11:22:49 INFO Fuseki :: [1] OK/select > > > *jetty_config.xml:* > <?xml version="1.0"?> > <!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" " > http://www.eclipse.org/jetty/configure.dtd"> > > <!-- > Reference: http://wiki.eclipse.org/Jetty/Reference/jetty.xml_syntax > http://wiki.eclipse.org/Jetty/Reference/jetty.xml > --> > > <Configure id="Fuseki" class="org.eclipse.jetty.server.Server"> > <Call name="addConnector"> > <Arg> > <New class="org.eclipse.jetty.server.nio.SelectChannelConnector"> > <Set name="port">8080</Set> > <Set name="maxIdleTime">0</Set> > <!-- All connectors --> > <Set name="requestHeaderSize">65536</Set> <!-- 64*1024 --> > <Set name="requestBufferSize">5242880</Set> <!-- 5*1024*1024 --> > <Set name="responseBufferSize">5242880</Set> <!-- 5*1024*1024 --> > </New> > </Arg> > </Call> > </Configure> > > 3 - Using *BlockingChannelConnector* with the suggested configuration: > > a. First when I tested with -Xmx1200M there was an OutOfMemory > exception... > > 11:43:05 INFO Fuseki :: [166] Query = SELECT * WHERE { < > http://dbpedia.org/resource/Takoma_Park%2C_Maryland> < > http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat . < > http://dbpedia.org/resource/Takoma_Park%2C_Maryland> < > http://www.w3.org/2003/01/geo/wgs84_pos#long> ?long } > 11:43:05 INFO Fuseki :: [166] OK/select > 11:43:06 INFO Fuseki :: [166] 200 OK > 11:43:06 INFO Fuseki :: [167] GET > http://fuseki.mooo.com:8080/dbpedia-geo/sparql?query=SELECT++*%0AWHERE%0A++%7B+%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FRockville%252C_Maryland%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23lat%3E+%3Flat+.%0A++++%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FRockville%252C_Maryland%3E+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F01%2Fgeo%2Fwgs84_pos%23long%3E+%3Flong%0A++%7D%0A > 11:43:06 INFO Fuseki :: [167] Query = SELECT * WHERE { < > http://dbpedia.org/resource/Rockville%2C_Maryland> < > http://www.w3.org/2003/01/geo/wgs84_pos#lat> ?lat . < > http://dbpedia.org/resource/Rockville%2C_Maryland> < > http://www.w3.org/2003/01/geo/wgs84_pos#long> ?long } > 11:43:06 INFO Fuseki :: [167] OK/select > 11:43:06 WARN Fuseki :: [167] RC = 500 : Java heap space > Exception in thread "qtp547896362-12" java.lang.OutOfMemoryError: GC > overhead limit exceeded > Exception in thread "qtp547896362-125" java.lang.OutOfMemoryError: GC > overhead limit exceeded > Exception in thread "qtp547896362-23" java.lang.OutOfMemoryError: GC > overhead limit exceeded > Exception in thread "qtp547896362-64" java.lang.OutOfMemoryError: GC > overhead limit exceeded > > > b. When I use "exec java -Xmx2400M -jar ..." > The server gets 20 results. After that the client stops. > > > *jetty_config.xml:* > <?xml version="1.0"?> > <!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" " > http://www.eclipse.org/jetty/configure.dtd"> > > <!-- > Reference: http://wiki.eclipse.org/Jetty/Reference/jetty.xml_syntax > http://wiki.eclipse.org/Jetty/Reference/jetty.xml > --> > > <Configure id="Fuseki" class="org.eclipse.jetty.server.Server"> > <Call name="addConnector"> > <Arg> > <New class="org.eclipse.jetty.server.nio.BlockingChannelConnector"> > * <Set name="useDirectBuffers">false</Set>* > <Set name="port">8080</Set> > > <!-- All connectors --> > <Set name="requestHeaderSize">65536</Set> <!-- 64*1024 --> > <Set name="requestBufferSize">5242880</Set> <!-- 5*1024*1024 --> > <Set name="responseBufferSize">5242880</Set> <!-- 5*1024*1024 --> > </New> > </Arg> > </Call> > </Configure> > > > > Regards, > Regis. > > > > On Fri, Apr 13, 2012 at 6:24 AM, Paolo Castagna < > castagna.li...@googlemail.com> wrote: > >> Andy Seaborne wrote: >> > When we have encountered this here, we set that 1G (default is 64K or >> > something small) and had no problems. (we=Epimoprhics, here=a >> > production server for a customer). >> >> ... >> >> > "BlockingChannelConnector" does by default and is used by Fuseki by >> > default. <Set name="useDirectBuffer">false</Set> turns use of direct >> > memory off. >> > >> > Any differences in performance are not measurable except under high >> load. >> >> ... >> >> This is useful to know, thanks for sharing Andy (and for the complete >> jetty-config.xml example). Useful. >> >> Paolo >> > >