Hi,
I am getting some strange exceptions using MonetDB JDBC 1.8/1.9, and I
decided to look into the code. While inspecting the code I came across
these strange lines in MonetConnection.executeQuery(String[] templ,
String query) method
(http://dev.monetdb.org/hg/MonetDB/file/718da8ca0a1a/java/src/nl/cwi/monetdb…).
In my case, these lines are executed for sure when doing a batch
insert. So, suppose that the batch contains the following commands (as
constructed by the MonetStatement.executeBatch() method):
exec 1(1, 957339737330229055);
exec 1(2, 278262503670654331);
exec 1(805306369, 3763943296910752235)
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? 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.
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?
Thanks a lot,
Babis
Hi,
we are using MonetDB (Oct-2010) for analyzing a 250G data warehouse and
have found at least one "thing" which might be a serious bug. The
simplest scenario that I have found to describe it, is as follows:
SELECT comp.id as compid, comp.name, affnets.name as affid
FROM toc
INNER JOIN app ON toc.application_id=app.id
INNER JOIN comp ON app.company_id = comp.id
INNER JOIN affnets ON toc.affiliate_network_id=affnets.id
GROUP BY compid, comp.name, affid
This query is supposed to return all unique company/affnet pairs which
occur in the fact table "toc". However, it returns only the unique
company-names, each with a random (the first?) affnet. (Of course, this
could be accomplished with DISTINCT, but our aim to to aggregate other
fields).
If I change the query to
select app.company_id as compid, comp.name, affnets.name as affid
...
or
select comp.id as compid, comp.name, affnets.name as affid
...
i.e. semantically the same but only with fields from 2 directly joined
tables in the GROUP BY, then the result is correct.
Question: Is this a bug or are we missing something?
Thank you in advance!
Daniel
Hi guys:
After delete some records from a table using a "delete from table where
field=value" criteria, why the "select cont(0) from table" still shows the
same records count? Maybe the records are only "marked" and not really
removed from the table? Thanks in advance
Osmin
Hi,
I need to get the Well Known Binary representation of a geometry but
I didn't find any function in documentation to do this.
Any ideas?
--
George Garbis
Hi all,
I have a table that stores a time interval as two timestamps, and want
to construct the most efficient query to check whether two intervals
in the table overlap. The naive way, using two range conditions [1],
seems to choke for large tables. The M5 SQL manual mentions an
OVERLAPS operator that, as far as I've read [2], seems to use an
optimized interval join algorithm.
Can anyone clarify:
1. How to convert a start timestamp and an end timestamp into an interval type
2. How to use the OVERLAPS operator
Many thanks.
Brien
[0]
create table intervals as (
id bigint,
series_id bigint,
start_time timestamp,
end_time timestamp
)
[1]
select
a.id as a_id
b.id as b_id
from intervals a
inner join intervals b on
b.series_id = a.series_id
and b.id < a.id
and b.start_time < a.end_time
and a.start_time < b.end_time
[2] http://monetdb.cwi.nl/XQuery/Documentation/StandOff-Extension.html
Hello all,
Is there a way to take the number of rows affected by the last statement
just like @@ROWCOUNT in SQL Server or SQL%ROWCOUNT in Oracle?
Thanks,
Vassilis
Hi Ryad,
There have been plans to port XQuery to MonetDB5, but there has been lack
of time and manpower to make this possible. This shortage of resources
might change if the database research community regains interest in XQuery
in a future. At CWI, a research project, engineering effort must always be
justified by ongoing research projects that profit from it. For the moment,
it is hard to predict when there will be XML database research projects
again, but I would not rule it out.
For the moment, you can also just continue to use MonetDB/XQuery. It had
not changed much anyway in the past two years, so the change is not
dramatic. The software is still available in open source in this April
branch of the MonetDB software. So one can still download it in binary,
check out the source, change it, compile it and even redistribute it
according to the license. CWI for the moment just will not create new
releases for it.
Peter
From: Ryad Ben-El-Kezadri [mailto:ryad.bek@gmail.com]
Sent: Friday, April 29, 2011 9:49 AM
To: monetdb-users(a)lists.sourceforge.net
Subject: [MonetDB-users] Discontinuation of MonetDB XQuery
Hello
I am a MonetDB XQuery supporter
(http://permalink.gmane.org/gmane.comp.db.monetdb.user/3824)
and I am sad that it is discontinued.
I was very enthusiastic about the software so I was rather excepting an
upgrade to MonetDB5.
However I am confident that it will be easy to turn my application to
MonetDB5.
As a basic XQuery user, my questions are threefold:
1)Are there some explanations for this change (flaws in the design of
XQuery 2.0, lack of users, performance limitation)?
2)Is MonetDB5 SQL able to store GB of data (as MonetDB XQuery)? Will we
observe performance gains for (time ordered) one dimensional data?
3)Is there an equivalent to the XRPC API?
Warm regards
Ryad
Hello
I am a MonetDB XQuery supporter (
http://permalink.gmane.org/gmane.comp.db.monetdb.user/3824)
and I am sad that it is discontinued.
I was very enthusiastic about the software so I was rather excepting an
upgrade to MonetDB5.
However I am confident that it will be easy to turn my application to
MonetDB5.
As a basic XQuery user, my questions are threefold:
1)Are there some explanations for this change (flaws in the design of XQuery
2.0, lack of users, performance limitation)?
2)Is MonetDB5 SQL able to store GB of data (as MonetDB XQuery)? Will we
observe performance gains for (time ordered) one dimensional data?
3)Is there an equivalent to the XRPC API?
Warm regards
Ryad