On Wed, Apr 6, 2011 at 5:04 PM, Fabian Groffen
On 06-04-2011 16:56:17 +0300, Charalampos Nikolaou wrote:
The lines in question take the above commands as a string, prepend a 's' character and append a ';' at the end. The resulting commands, which are written in the server's socket, are the following:
sexec 1(1, 957339737330229055); exec 1(2, 278262503670654331); exec 1(805306369, 3763943296910752235);
First of all, I am not familiar with the internals of JDBC drivers. Taking this into account, is this what it should be?
Yes it exactly is what it should be.
From a symmetric point of view, I would assume that the correct would be the following:
sexec 1(1, 957339737330229055); sexec 1(2, 278262503670654331); sexec 1(805306369, 3763943296910752235);
That is, it should prepend a 's' character before an exec command.
Yes, but then you're not batching any more, which is what the command is trying to do.
Last, are these exec commands (with or without a prepending 's') specific to MonetDB? In either case, is there any documentation to get familiar with their meaning?
Yes, it is just to execute a prepared handle.
Perhaps you can give us a clue on what your problem/issue is? We might be able to just help you from what you're observing.
Hmm, I am not very sure that I understand completely what is going on. That's why I made no point in my previous message. But, since you are asking for this, I can easily whet your appetite. I am trying to make the Sesame RDF store work with MonetDB. When inserting some tuples to specific tables I get the following exception: 1530 [main] ERROR java.sql.BatchUpdateException: Error(s) occurred while executing the batch, see next SQLExceptions for details java.sql.BatchUpdateException: Error(s) occurred while executing the batch, see next SQLExceptions for details The next SQLExceptions is just current transaction is aborted (please ROLLBACK). So, I opted for inspecting the more simpler JDBC code in order to find something that would explain such an error. What it strucks me is that when i configure Sesame to use batches of a single statement the exceptions are gone. But again, the inserts are never persisted in the tables. Apart from this, i have also tried to change JDBC's addBatch() method to do the execute and then clearing the batch. Oddly, this works most of the times, persisting the inserts also, but there are times in which I get synchronization exceptions. While I can understand these last exceptions, I have no clue as to what is going wrong and why the behavior is different when batching with a single statement. Any ideas? Babis