Hy Christian,
I think also, that it's a client problem. With the direct execution of ClientQuery.execute i get an exception:
Exception in thread "main" java.lang.NegativeArraySizeException at java.util.Arrays.copyOf(Arrays.java:2786) at org.basex.io.out.ArrayOutput.write(ArrayOutput.java:37) at org.basex.server.ClientSession.receive(ClientSession.java:305) at org.basex.server.ClientSession.receive(ClientSession.java:268) at org.basex.server.ClientSession.execute(ClientSession.java:174) at org.basex.server.Session.execute(Session.java:51) at test1.main(test1.java:66)
The data, which i receive from the basexDB, has a size around of 2,16 GByte. The max. int value could be 2,147,483,647 and so its clear, that the receive-Method get an negative value.
void receive(final BufferInput bi, final OutputStream os) throws IOException { final DecodingInput di = new DecodingInput(bi); for(int b; (b = di.read()) != -1;) os.write(b); }
May be the size of my result with session.query() and the one missing character depends also on the max integer value?!?
regars Sven
On 03.11.2011 18:56, Christian Grün wrote:
Hi Sven,
sounds indeed like a client issue. I have no idea, however, what the problem could be, as our client code is pretty light-weight. Did you manage to encounter the same problem by calling ClientQuery.execute (..or is the result too large to be generated by this command)? It would be great if you could provide us with a reproducible example - but I know it's sometimes difficult to generate one.
Christian ___________________________
On Thu, Nov 3, 2011 at 5:08 PM, Sven Regasven.rega@gmx.de wrote:
Hy Dimitar,
With the standalone mode, the described problem is not present. So it could be really a problem in the client/server communication.
regards, Sven
On 03.11.2011 14:34, Dimitar Popov wrote:
Am Donnerstag, 3. November 2011, 14:15:31 schrieb Sven Rega:
Hy Christian,
Some idea from me: could it be a buffer problem (overlapping issue) ? The Query_1 produce data with around 2,1 GB. With the same query, the angle bracket is always missing on the same entity on the same (byte) offset in the result. May be some output buffer from the server side or some input buffer from the client side has a bug?
Hi Sven,
can you try running basex as stand-alone application (i.e. not client-server). Thus, we'll be able to see if the problem is in the client-server communication...
Greetz, Dimitar