Bugs item #1765919, was opened at 2007-08-02 10:16
Message generated for change (Comment added) made by mr-meltdown
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1765919&group_id=56967
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: SQL/JDBC
Group: (zombie: Clients 1.18)
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Sjoerd Mullender (sjoerd)
Assigned to: Fabian (mr-meltdown)
Summary: API:Incomplete block read from stream (Mserver still alive?)
Initial Comment:
From a message sent directly to Peter:
I ran tests with 4.18.0 version of the database on windows platform using the
MonetDB4-XQuery-i686-0.18.2.msi install. I work on a bi-processor machine under
Windows XP.
Problems with the JDBC interface
Opening documents
If I try to open a document (giving the doc (“documentName”) instruction) which
is bigger than 150ko I get an error most of the time (60%):
Incomplete block read from stream (Mserver still alive?)
I ran a code from the tutorial :
public class testMonet {
public static void main(String[] args) {
int errors = 0;
for(int k=0;k<100;k++){
System.out.println(k);
try {
Class.forName("nl.cwi.monetdb.jdbc.MonetDriver");
} catch (Exception e1) {
e1.printStackTrace();
}
try {
Connection myConnection =
DriverManager.getConnection("jdbc:monetdb://localhost:50000/database?language=xquery","monetdb",
"monetdb");
Statement myStatement = myConnection.createStatement();
ResultSet myResultSet =
myStatement.executeQuery("doc(\"new\")");
myResultSet.next();
String buffer = myResultSet.getString(1);
myConnection.close();
System.out.println("ok");
} catch (SQLException e) {
System.out.println("error");
errors ++;
}
}
System.out.println("Errors "+errors);
}
}
I had the same problems with more complex queries returning too big results.
It seems to be a thread problem. The success rate of opening documents is even
under 1% for documents which are bigger than 10megs.
----------------------------------------------------------------------
>Comment By: Fabian (mr-meltdown)
Date: 2007-11-16 13:12
Message:
Logged In: YES
user_id=963970
Originator: NO
indeed, this has been fixed in Steadfast_p13
----------------------------------------------------------------------
Comment By: Martin Kersten (mlkersten)
Date: 2007-11-16 13:09
Message:
Logged In: YES
user_id=490798
Originator: NO
Has this been solved with your latest patch.
----------------------------------------------------------------------
Comment By: Fabian (mr-meltdown)
Date: 2007-11-11 01:26
Message:
Logged In: YES
user_id=963970
Originator: NO
this is a windows issue that I cannot debug due to the lack of access to
such machine.
----------------------------------------------------------------------
Comment By: Martin Kersten (mlkersten)
Date: 2007-11-10 23:31
Message:
Logged In: YES
user_id=490798
Originator: NO
Is this still an issue?
----------------------------------------------------------------------
Comment By: loicsg (loicsg)
Date: 2007-08-03 11:52
Message:
Logged In: YES
user_id=1843262
Originator: NO
It does the same with the JdbcClient.
----------------------------------------------------------------------
Comment By: Fabian (mr-meltdown)
Date: 2007-08-03 11:32
Message:
Logged In: YES
user_id=963970
Originator: NO
I just shredded a doc of 2.9MB's
($XQUERY_DIR/tests/BugTracker/Tests/predicate_selects_too_few_nodes.SF-1636588.xml)
and used the query 'doc("big.xml")' in JdbcClient -lxquery with no
problem.
Can you try if your document also results in a problem when using
JdbcClient? If it does there too, then maybe this is a windows specific
issue. I expect JdbcClient not to work for you either, since it basically
does the same.
----------------------------------------------------------------------
Comment By: loicsg (loicsg)
Date: 2007-08-03 11:28
Message:
Logged In: YES
user_id=1843262
Originator: NO
Yes, even with a document with a very simple structure I have the same
problem.
Here is the Java complete StackTrace if it can be any help :
java.sql.SQLException: Incomplete block read from stream (Mserver still
alive?)
at
nl.cwi.monetdb.jdbc.MonetConnection$ResponseList.executeQuery(MonetConnection.java:2049)
at
nl.cwi.monetdb.jdbc.MonetConnection$ResponseList.processQuery(MonetConnection.java:1796)
at
nl.cwi.monetdb.jdbc.MonetStatement.internalExecute(MonetStatement.java:371)
at nl.cwi.monetdb.jdbc.MonetStatement.execute(MonetStatement.java:340)
at
nl.cwi.monetdb.jdbc.MonetStatement.executeQuery(MonetStatement.java:404)
at testMonet.main(testMonet.java:34)
----------------------------------------------------------------------
Comment By: Fabian (mr-meltdown)
Date: 2007-08-03 11:15
Message:
Logged In: YES
user_id=963970
Originator: NO
Ok, I need try to reproduce this myself. Just generating a document >
150KB and using the query doc("xxx") is enough, right?
----------------------------------------------------------------------
Comment By: loicsg (loicsg)
Date: 2007-08-03 11:08
Message:
Logged In: YES
user_id=1843262
Originator: NO
The part of the document that is received doesn't look like a complete
part since it is cut in the middle of a tag.
I don't know if it can help but as I run tests, I got a MonetDB server
opened and when the crash happens it sends a message :
xquery_server: client X could not flush prompt (X between 1 and 15..)
----------------------------------------------------------------------
Comment By: Fabian (mr-meltdown)
Date: 2007-08-03 10:36
Message:
Logged In: YES
user_id=963970
Originator: NO
thanks, it looks like it gets an EOF before it can read the promised 8190
bytes, which feels like a problem on the server side of the connection to
me.
A second weird thing here is that the block isn't marked as "final". Does
the part of the document that is received look like a complete part? Or is
it cut off?
----------------------------------------------------------------------
Comment By: loicsg (loicsg)
Date: 2007-08-03 10:27
Message:
Logged In: YES
user_id=1843262
Originator: NO
Here are parts of the logfile I get using the debug mode :
RD 1186127660312: read new block: 8190 bytes
RD 1186127660312: the following incomplete block was received:
RX 1186127660312: (then I have a part of my document which is not always
the same part)
----------------------------------------------------------------------
Comment By: Fabian (mr-meltdown)
Date: 2007-08-02 10:21
Message:
Logged In: YES
user_id=963970
Originator: NO
I would like to have a (tail of a) JDBC logfile of such "crash" occurring.
You can obtain it by using the following connection creation statement:
DriverManager.getConnection("jdbc:monetdb://localhost:50000/database?language=xquery&debug=true","monetdb",
"monetdb");
it will generate a monet_4987427864287323.log file located in the current
working directory.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1765919&group_id=56967
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-bugs