annotate ChangeLog @ 386:15b87fd68052

Extended JdbcClient program with 3 new commands to quickly validate data integrity: \vsci validate sql system catalog integrity \vsi <schema> validate integrity of data in the given schema \vdbi validate integrity of data in all user schemas in the database The current validations include: - Primary Key uniqueness - Primary Key column(s) being NOT NULL (currently only for \vsci) - Unique constraint uniqueness - Foreign Key referential integrity (currently only for \vsci) - Column NOT NULL constraint - Varchar(n) max length constraint - Idem for char(n), clob(n), blob(n), json(n) and url(n). It can be usefull to run \vsci before and after an upgrade. Use \vsi my_schema to validate data in all tables of a specific schema. Use \vdbi to validate integrity of data in all user schemas in the database. Note this can take a while, depending on your number of user schemas and tables sizes. Despite being tested on several internal dbs the functionality is still beta, so you can get false errors reported. If you encounter these let us know asap.
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Thu, 29 Oct 2020 15:43:30 +0100 (2020-10-29)
parents 19a5583a7b5f
children f523727db392
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
89
a6608e9581c1 Moved content of ChangeLog to ChangeLog-Archive.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 53
diff changeset
1 # ChangeLog file for monetdb-java
0
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
2 # This file is updated with Maddlog
a5a898f6886c Copy of MonetDB java directory changeset e6e32756ad31.
Sjoerd Mullender <sjoerd@acm.org>
parents:
diff changeset
3
386
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
4 * Thu Oct 29 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
5 - Extended JdbcClient program with 3 new commands to quickly validate
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
6 data integrity:
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
7 \vsci validate sql system catalog integrity
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
8 \vsi <schema> validate integrity of data in the given schema
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
9 \vdbi validate integrity of data in all user schemas in the database
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
10 The current validations include:
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
11 - Primary Key uniqueness
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
12 - Primary Key column(s) being NOT NULL (currently only for \vsci)
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
13 - Unique constraint uniqueness
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
14 - Foreign Key referential integrity (currently only for \vsci)
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
15 - Column NOT NULL constraint
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
16 - Varchar(n) max length constraint
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
17 - Idem for char(n), clob(n), blob(n), json(n) and url(n).
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
18 It can be usefull to run \vsci before and after an upgrade.
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
19 Use \vsi my_schema to validate data in all tables of a specific schema.
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
20 Use \vdbi to validate integrity of data in all user schemas in
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
21 the database. Note this can take a while, depending on your number
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
22 of user schemas and tables sizes. Despite being tested on several
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
23 internal dbs the functionality is still beta, so you can get false
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
24 errors reported. If you encounter these let us know asap.
15b87fd68052 Extended JdbcClient program with 3 new commands to quickly validate data integrity:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 383
diff changeset
25
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
26 * Thu Oct 8 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
383
19a5583a7b5f Improved performance of ResultSetMetaData methods isAutoIncrement(), getPrecision() and getScale() significant for columns of specific data types as in some cases no costly meta data query is executed anymore.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 381
diff changeset
27 - Improved performance of ResultSetMetaData methods isAutoIncrement(),
19a5583a7b5f Improved performance of ResultSetMetaData methods isAutoIncrement(), getPrecision() and getScale() significant for columns of specific data types as in some cases no costly meta data query is executed anymore.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 381
diff changeset
28 getPrecision() and getScale() significant for columns of specific data
19a5583a7b5f Improved performance of ResultSetMetaData methods isAutoIncrement(), getPrecision() and getScale() significant for columns of specific data types as in some cases no costly meta data query is executed anymore.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 381
diff changeset
29 types as in some cases no costly meta data query is executed anymore.
381
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
30 - The connection properties treat_clob_as_varchar and treat_blob_as_binary
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
31 are now set to true by default within the JDBC driver. This is done
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
32 as it results by default in less memory usage, (much) faster response
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
33 and better user experience for many generic JDBC applications (like
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
34 SQuirreL SQL, DBeaver, etc) when fetching data from CLOB or BLOB result
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
35 columns. See release.txt for more information and how you can turn
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
36 it off to get the old JDBC driver behavior if you require it.
11c30e3b7966 Set the connection properties treat_clob_as_varchar and treat_blob_as_binary to true by default for faster processing (less objects created, less memory needed) when querying CLOB or BLOB column data.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 380
diff changeset
37
380
bf521f343172 Added support for new Java 8 java.sql.Types: Types.TIME_WITH_TIMEZONE and Types.TIMESTAMP_WITH_TIMEZONE.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
38 * Wed Oct 7 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
bf521f343172 Added support for new Java 8 java.sql.Types: Types.TIME_WITH_TIMEZONE and Types.TIMESTAMP_WITH_TIMEZONE.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
39 - Added support for new Java 8 java.sql.Types: Types.TIME_WITH_TIMEZONE and
bf521f343172 Added support for new Java 8 java.sql.Types: Types.TIME_WITH_TIMEZONE and Types.TIMESTAMP_WITH_TIMEZONE.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
40 Types.TIMESTAMP_WITH_TIMEZONE.
bf521f343172 Added support for new Java 8 java.sql.Types: Types.TIME_WITH_TIMEZONE and Types.TIMESTAMP_WITH_TIMEZONE.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 376
diff changeset
41
375
a229ac4e275c Corrected MonetDatabaseMetaData.getTypeInfo()
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 369
diff changeset
42 * Wed Sep 23 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
376
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
43 - Updated JDBC driver to comply with JDBC 4.2 interface now we compile
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
44 for Java 8. This includes:
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
45 - adding 8 methods to MonetCallableStatement
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
46 - adding 2 methods to MonetDatabaseMetaData
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
47 - adding 3 methods to MonetPreparedStatement
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
48 - adding 4 methods to MonetResultSet
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
49 - adding 8 methods to MonetStatement
375
a229ac4e275c Corrected MonetDatabaseMetaData.getTypeInfo()
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 369
diff changeset
50 - Corrected MonetDatabaseMetaData.getTypeInfo()
376
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
51 - The LITERAL_PREFIX column now includes the required casting name for
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
52 types: clob, inet, json, url, uuid and blob.
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
53 - The SEARCHABLE column now returns typePredBasic instead of typeSearchable
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
54 for type: blob.
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
55 - The AUTO_INCREMENT column now returns false for types: hugeint, decimal,
ffdc7b0e102d Updated JDBC driver to comply with JDBC 4.2 interface now we compile for Java 8. This includes:
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 375
diff changeset
56 oid and wrd.
375
a229ac4e275c Corrected MonetDatabaseMetaData.getTypeInfo()
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 369
diff changeset
57
363
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
58 * Thu Sep 10 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
59 - Removed support for deprecated MD5 encryption algorithm in MapiSocket.
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
60
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
61 * Wed Sep 9 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
62 - Corrected Statement.executeBatch() method. It now implicitly clears the
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
63 batch buffer, ready to accept new addBatch() calls without the need for
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
64 an explicit clearBatch() call.
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
65 See also https://www.monetdb.org/bugzilla/show_bug.cgi?id=6953
34ce6e1b1be8 Remove support for deprecated MD5 encryption algorithm in MapiSocket.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 356
diff changeset
66
356
eabbc5bf7cdb Corrected the return value of getCatalogTerm();
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
67 * Wed Feb 19 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
eabbc5bf7cdb Corrected the return value of getCatalogTerm();
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
68 - Corrected the return value of getCatalogTerm() to "cat".
eabbc5bf7cdb Corrected the return value of getCatalogTerm();
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 354
diff changeset
69
354
b1f8750e6cde Switch to Java 8 compilation and distribution as Java 7 is no longer supported.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 339
diff changeset
70 * Wed Feb 12 2020 Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
b1f8750e6cde Switch to Java 8 compilation and distribution as Java 7 is no longer supported.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 339
diff changeset
71 - As Java 7 is no longer supported we now compile for Java 8 as the
b1f8750e6cde Switch to Java 8 compilation and distribution as Java 7 is no longer supported.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 339
diff changeset
72 minimum required JVM version (profile compact2).
b1f8750e6cde Switch to Java 8 compilation and distribution as Java 7 is no longer supported.
Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
parents: 339
diff changeset
73