The MonetDB team at CWI/MonetDB BV is pleased to announce the
Aug2011-SP2 bugfix release of the MonetDB suite of programs.
More information about MonetDB can be found on our website at
http://www.monetdb.org/.
For details on this release, please see the release notes at
<http://www.monetdb.org/Downloads/ReleaseNotes>.
As usual, the download location is <http://dev.monetdb.org/downloads/>.
Aug 2011-SP2 bugfix release
Client Package * ODBC: Implemented a workaround in SQLTables for bug
2908.
* Small improvement to mclient's table rendering for
tables without any rows. Previously, the column names
in the header could be squeezed to very small widths,
degrading readability.
* Python DB API connect() function now supports PEP
249-style arguments user and host, bug #2901
* mclient now checks the result of encoding conversions
using the iconv library.
* Fixed a source of crashes in mclient when a query on
the command line using the -s option is combined with
input on standard input (e.g. in the construct mclient
-s 'COPY INTO t FROM STDIN ...' < file.csv).
* Fixed bug 2897 where slow (network) reads could cause
blocks to not be fully read in one go, causing errors
in the subsequent use of those blocks. With thanks to
Rémy Chibois.
* Fixed a bug in mclient where processing queries from
files could result in ghost empty results to be
reported in the output
Merovingian * Resolved problem where monetdbd would terminate
abnormally when databases named 'control', 'discovery'
or 'merovingian' were stopped.
* monetdbd get status now also reports the version of the
running monetdbd
* Improved response time of 'monetdb start' when the
database fails to start.
* Fixed a bug in monetdbd where starting a failing
database could incorrectly be reported as a 'running
but dead' database.
* To avoid confusion, all occurrences of merovingian were
changed into monetdbd for error messages sent to a
client.
Bug Fixes * 2346: mkey.bulk_rotate_xor_hash MAL exception
* 2712: un-rolled-back savepoints cause crash upon
scenario exit
* 2774: COPY INTO of double (~1.0e-310) cannot be
imported.
* 2890: Slow execution of COUNT in combination with
DISTINCT
* 2894: No consistent behavior of implicit cast of
integer to double
* 2897: Mapi.pm: short reads not handled when reading
blocks from server
* 2898: order by for multiple (two) columns fails for
large tables when second ordering is 'desc':
"mat.refine_reverse' undefined"
* 2900: rand(int) should not return NULL
* 2901: Make keyword arguments in Python DB API connect()
function more standard
* 2904: TypeException after calling UDF in other than sys
schema (when it is initialised)
* 2906: "ALTER TABLE mytable SET READ ONLY" results in
server segfault
* 2908: SQL query produces error with MAL statements
* 2909: query result is not displayed when history = true
I have created a new stable branch for the next feature release. This
branch was created in order to stabilize the code before the feature
release.
From now on *only* bug fixes may go to this new stable branch. I
reserve the right to undo any changes that do not comply with this
rule. I also reserve the right to admit changes that are not strictly
bug fixes.
The name for the branch is Dec2011. So in each of your stable
checkout directories you can do
hg pull
hg update -rDec2011
to update to this new branch.
--
Sjoerd Mullender
Hello,
i am looking for a manual about all the date and time functions supported in
Monetdb. In the official site there is no such manual, can anyone help me
please?
Thank you very much
Dear all,
I took from
http://www.monetdb.org/Documentation/Manuals/SQLreference/TableMgmt
that
alter table MY-TABLE-NAME set read only
should work.
In my Apr-SP1 version on CentOS this however crashes mclient.
Vriendelijke groet,
Arjen
--
====================================================================
CWI, room L333 Centre for Mathematics and
Computer Science
Science Park 123 Email: Arjen.de.Vries(a)cwi.nl
1098 XG Amsterdam tel: +31-(0)20-5924306
The Netherlands fax: +31-(0)20-5924199
===================== http://www.cwi.nl/~arjen/ ====================
Hi,
I've built the latest code from Mercurial repository, and I cannot get any
database to start. I am doing everything locally, so this sequence of
commands invariably results in the db crashing:
monetdbd start monetdb-farm/
monetdb create demo
created database in maintenance mode: demo
mark@mark-desktop:~$ monetdb start demo
starting database 'demo'... FAILED
start: starting 'demo' failed: database 'demo' has crashed after starting,
manual intervention needed, check monetdbd's logfile for details
and not much more in the log
2011-10-10 19:12:38 MSG control[4544]: (local): created database 'demo'
2011-10-10 19:12:48 MSG control[4544]: (local): served status list
2011-10-10 19:12:48 MSG merovingian[4544]: startup of database under
maintenance 'demo' forced
2011-10-10 19:12:48 MSG merovingian[4544]: starting database 'demo', up
min/avg/max: 0s/0s/0s, crash average: 0.00 0.00 0.00 (0-0=0)
2011-10-10 19:12:48 MSG demo[4553]: arguments: /usr/local/bin/mserver5 --set
gdk_dbfarm=/home/mark/monetdb-farm --dbname=demo --set
merovingian_uri=mapi:monetdb://mark-desktop:50000/demo --set mapi_open=false
--set mapi_port=0 --set mapi_usock=/home/mark/monetdb-farm/demo/.mapi.sock
--set monet_vault_key=/home/mark/monetdb-farm/demo/.vaultkey --set
max_clients=64 --set monet_daemon=yes
2011-10-10 19:12:48 MSG merovingian[4544]: database 'demo' (4553) was killed
by signal SIGSEGV
2011-10-10 19:12:48 ERR control[4544]: (local): failed to fork mserver:
database 'demo' has crashed after starting, manual intervention needed,
check monetdbd's logfile for details
Thank you. Sincerely,
Mark
On 10-10-2011 22:48:49 +0200, Sjoerd Mullender wrote:
> Don't append partial queries inside mapi_query_part.
> When using the construct
> mclient -s 'COPY INTO t FROM STDIN ...' < file.csv
> mapi_query is called for the first part of the query (on the command
> line) which allocates just enough space to remember that query, and
> then mapi_query_part is called for each line of the input file, which
> assumed the allocated space was 512 bytes, resulting in out-of-bounds
> writes.
Wouldn't the fix have been to use (computed) ln instead of sz in the
else case of the hdl->query check? I think this is the original
problem.
With your change now, are back to the situation where only the first
line of a query is remembered, which is often as useless as not showing
any query at all.
Consider
SELECT *<enter>
FROM table<enter>
WHERE blabla<enter>
;<enter>
> if (hdl->query == NULL) {
> - size_t sz = size;
> -
> - sz = 512;
> - hdl->query = malloc(sz + 1);
> - assert(hdl->query);
> - hdl->query[0] = '\0';
> - strncpy(hdl->query, query, sz);
> - hdl->query[sz] = '\0';
> - } else {
> - size_t ln = strlen(hdl->query), sz = 512 - ln;
> - if (sz > 0) {
> - if (size < sz)
> - sz = size;
> - assert(hdl->query);
> - strncat(hdl->query, query, sz);
> - }
> + hdl->query = strdup(query);
> }
Hi,
I've tried quite a few things (creating the files/strings with 0 at the end,
with 0 and \n at the end, fixed length, etc.) but I still get an error
sql>copy into sku from ('/home/mark/MonetDbData/myfile);
SQLException:sql:failed to attach file /home/mark/MonetDbData/myfile
I know that I can load integer values, because that works, so the problem
must be in how I am formatting strings for MonetDB binary load. Are there
any examples or any dumps to look at?
Thank you,
Mark