Skip to main content

MonetDB Jul2015 Release

Jul 2015-SP1 bugfix release

Client Package
  • In the SQL formatter of mclient (the default) we now properly align East Asian wide characters.

Bug Fixes
  • 3789: Query on large string table fails on HEAPextend
  • 3794: table function sys.rejects() and view sys.rejects() are listed are metadata objects but give an (incorrect) error when they are queried
  • 3797: COPY INTO with incorrect number columns
  • 3798: SELECT query with INTERSECT causes assertion failure
  • 3800: LIKE is broken for many patterns
  • 3802: Disk space never freed: a logical ref is keeped on a deleted BATs
  • 3803: SQL query parser fails to parse valid SELECT query with a CASE .. END in it. It fails with parser error: identifier 'x' ambiguous
  • 3804: `monetdb status` command crashes under certain conditions
  • 3809: Inefficient plan is generated for queries with many (>= 24) joined tables which take a long time or an HEAPalloc error. I get Error: GDK reported error. HEAPalloc: Insufficie
  • 3810: Fix statistics gathering
  • 3811: NOT LIKE not working if the operand doesn't contains wildcards.
  • 3813: COPY INTO fails on perfectly clean CSV file
  • 3814: Server crash when using bitwise NOT operation in SQL query
  • 3816: Server crashes when trying to convert timestamp to str with incorrect format
  • 3818: Crash when performing UNION/GROUP BY over tables with different columns
  • 3819: order of tables in FROM-clause has negative impact on generated plan (using crossproducts instead of joins)
  • 3820: mclient accepts table with repeated constraint which causes crash on insert
  • 3821: Unexpected error when using a number instead of a boolean
  • 3822: Yet another LIKE operator issue
  • 3823: JDBC Connection to a schema - setSchema() error
  • 3825: MonetDB not cleaning intermediate results which leads to filling up disk space and ultimately server crash
  • 3827: Certains comparisons between UUID produce a MAL error
  • 3828: Schema corruption after several ALTER TABLE statements and server restart
  • 3829: Certains simple WHERE clause cause MonetDB to segfault without explanation
  • 3830: Coalesce typing inconsistencies
  • 3833: NULL literals refused at many places
  • 3834: Date comparison returns incorrect results
  • 3839: msqldump generates incorrect syntax ON UPDATE (null)

Jul 2015 feature release

Do not skip upgrades! If you are running a release older than the Oct2014 series (11.19.X), do not skip upgrading to the Oct2014 release before upgrading to the Jul2015 release.  In fact, you should first upgrade to the Oct2014-SP2 (11.19.9).  Don't forget to start the server and to connect a client to the server for each of your databases.

One of the new features in this release is the possibility to use "best effort" when importing CSV files into the server.  However, we have found a bug that causes this feature to misbehave when the CSV file cannot be read correctly (exactly when one might want to use best effort).  Hence we recommend to not use the feature.  See bug 3797.

MonetDB5 Server
  • Implemented batcalc.min and batcalc.max. Made calc.min and calc.max generic so that no other implementations are needed.

  • Removed function batcalc.ifthen.

Build Environment
  • Upgraded the license to the Mozilla Public License Version 2.0.

Client Package
  • Added a new output format to mclient: --format=expanded (or -fx). In this format, column values are shown in full and below each other.

MonetDB Common
  • BUNtvar and BUNhvar macros no longer work for TYPE_void columns.

  • Changed interfaces of a lot of GDK-level functions. When they modify a BAT, don't return the same BAT or NULL, but instead return GDK_SUCCEED or GDK_FAIL.

  • Changed a bunch of hash-related functions to work on the tail column. The functions that have been changed to work on the tail column are: BAThash, BATprepareHash, HASHgonebad, HASHins, and HASHremove.

Java Module
  • Improved JDBC driver to not throw NullPointerException anymore when calling isNullable() or getPrecision() or getScale() or getColumnDisplaySize() or getSchemaName() or getTableName() or getColumnClassName() on a ResultSetMetaData object.

  • We now compile the Java classes using the latest Java 1.8 version, and we tell it to compile for Java 1.7.

  • Differences between time, timestamp, and date values now return properly typed interval types (second or month intervals) instead of integers.

  • Added support for 128-bit integers (called HUGEINT) on platforms that support this.

  • Removed support for the mseed library.

  • Removed support for RDF.

  • Removed DataCell. It was experimental code that was never enabled.

Bug Fixes
  • 2618: Implement master slave scheme
  • 3361: constants as MAL function parameters prevent intermediate reuse
  • 3364: Cannot set role back to a user's default role
  • 3365: Unable to grant object privileges while having a non-default current_role
  • 3440: Sequence type errors
  • 3449: mserver crash on start - Freebsd 10 amd64
  • 3476: Cannot revoke object access
  • 3496: autocompletion table names does not work correctly
  • 3556: when 2 multiplexed functions in MAL plan, only one is mapped correctly to bat<mod>.function primitive
  • 3564: Request: add support for postgresql specific scalar function: split_part(string text, delimiter text, field int)
  • 3625: SIGSEGV because mat array can overrun in opt_mergetable.c
  • 3627: SQRT in CASE does not work as of Oct2014
  • 3654: configure --enable-fits requires extra commands after creating a database instance
  • 3673: mclient 'expanded' row formatter
  • 3674: Obfuscate event tracing
  • 3679: No error is given when incorrect timezone value is specified for a timetz column
  • 3686: Wrong associativity of multiply/divide
  • 3702: Filter function not found if created in a user schema
  • 3708: wrong scoping for cross-schema view references
  • 3716: alter table my_merge_table drop table t1; crashes mserver5 with Segmentation fault
  • 3724: Wrong size calculation in BATsubjoin
  • 3730: SAMPLE function not sampling randomly
  • 3732: memory leak (of InstrRecord) in opt_mergetable
  • 3733: "(TRUE OR <Exp>) AND <Exp>" is evaluated incorrectly
  • 3735: python connection with unix_socket
  • 3736: crash if mclient disconnects abruptly during a query
  • 3738: Database inconsistency when using savepoint
  • 3739: CASE statements do not handle NULLs in the IN () operator properly
  • 3740: select epoch(now()); types timestamptz(7,0) and bigint(64,0) are not equal
  • 3742: Division By Zero
  • 3744: cast to int gives different results for decimal than double
  • 3747: joins fail in the presence of nulls
  • 3748: Missing META-INF/services/java.sql.Driver in JDBC package
  • 3753: Hang on json field parsing
  • 3754: select from a REMOTE TABLE referring local table crashes mserver5
  • 3756: column type conversion sticks to subsequent queries
  • 3758: "COPY INTO ..." doesn't work, if executing from 2 processes concurrently.
  • 3759: select data from "sys"."rejects" returns unexpected error and when next select data from "sys"."sessions" causes an assertion failure in mal_interpreter.c:646.
  • 3760: SQL parser has problem with (position of) a scalar subquery in a SELECT-list
  • 3761: SQL executor has problem with (position of) a subquery in a SELECT-list. Inconsistent behavior.
  • 3763: JDBC PreparedStatement for a table with 14 Foreign Keys crashing the Database
  • 3764: DROPping multiple users causes a crash
  • 3765: Re-granting a revoked privilege does not work
  • 3766: VIEW not visible if created under a different schema
  • 3767: CREATE TEMP TABLE using "LIKE" incorrectly handled
  • 3769: SIGSEGV when combining a cast/column alias with a UNION ALL view
  • 3770: combined conditions on declared table in User Defined Function definition crashes monetdb
  • 3771: Owner of the schema loses rights if assumes the monetdb role.
  • 3772: Any user can grant a role.
  • 3773: quantile(col, 0) and quantile(col, 1) fail
  • 3774: mclient is unaware of merge tables and remote tables
  • 3775: COPY INTO: Backslash preceding field separator kills import
  • 3778: Crash on remote table schema mismatch
  • 3779: server crashes on MAX() on SELECT DISTINCT something combo
  • 3783: Behavioural change in Jul2015 for 'timestamp minus timestamp'
  • 3784: Assertion failed: (bn->batCapacity >= cnt), function BAT_scanselect, file gdk_select.c, line 1008.
  • 3785: sum(interval) causes overflow in conversion to bte
  • 3786: ResultSet.close() never sends Xclose to free resources
  • 3787: "b and g must be aligned" from complex group/union query
  • 3791: HEAPextend: failed to extend to 2420077101056