Skip to main content


Doctor, what’s happening with my query in the MonetDB kernel?

All database users will recognize this situation. A user has started a query and it takes ages before the result set is available or, even worse, the database server seems unresponsive. In production systems, this is countered by logging all queries whose response time exceed a high-watermark or to tap into the system using a network monitoring system to observe its CPU and I/O behaviour. However, this only helps in post-mortem analysis. Monitoring all running queries alone is also not sufficient. It can only raise the red flag.

From automake to CMake: a facelift for our build infrastructure

The MonetDB project runs since early 1993 when the first lines of code were written. Initially developed for Unix only, it became clear that moving MonetDB into the open-source community in 2003 comes with the obligation to make it available on many platforms.

Limit memory usage of MonetDB on Linux with CGROUPS

MonetDB is well-known for its eagerness to "eat up" all your memory. Fortunately, on Linux, there is a memory resource controller called cgroups, with which one can rein in that behaviour a bit. Let me share some experiences of MonetDB under cgroups here.


SQL:2003 merge statements now supported in MonetDB

As of the Apr2019 release of MonetDB, we have implemented the merge statement feature of the SQL:2003 standard. Merge statements allow one to conditionally insert, update and/or delete records in a target table using an input relation with a single statement.

The grammar is as follows:


     [ WITH with_list ] MERGE INTO table_name [ [AS] ident ] USING input_rel [ [AS] ident ] ON search_condition merge_clause [ merge_clause ]


Subscribe to Blogs