Patch list for RDM 14.0 14.0.4 02-Feb-2017 Issue Description ----- ---------------------------------------------------------- #964 Performance Optimizations #1446 SQL parser had the TOK_DROP keyword in an incorrect location #1448 Recompiling a stored procedure on a missing SSP file causes a 'duplicate procedure name' error #1486 Move sysstats to a json file in the database directory #1497 The DBA thru execution plan fails to work. #1437 Reinserting a row can truncate a table on failure #1438 Table with limits incorrectly reported as circular #1450 Index entries from foreign key columns are not updated when the primary value is updated or deleted #1468 rdm-initialize does not use a db-uri #1469 rdm-export does not work with a remote TFS #1472 rdm_cursorGetCount returns incorrect count for keyrange cursors #1487 Recovery should not update pack reuse block b-trees #1488 Dropping a database should not trigger recovery #1496 AVL can be corrupted if multiple indexes are on a table #1498 Incorrect calculation of the key structure byte length #1502 The first entry in a new idindex directory page is not assigned #1511 d_keyread returning S_READ_TRUNCATE #1512 d_keyrdstate returns S_READ_TRUNCATE #1470 Optimize encryption check when opening a database #1471 Memory usage high when opening a database with a big schema #1473 Create a rdm-drop utility #1475 Use CLOCK_MONOTONIC for Posix condition variables instead of CLOCK_REALTIME #1499 Allow rdm_cursorReadKey to read from key information #1500 Add locale support #1508 Display rc code and dbuser id when the TFS detects a remote user has been disconnected 14.0.3 06-Dec-2016 Issue Description ----- ---------------------------------------------------------- #1148 Completion condition is not preserved when returned from a function #1296 Implement the getGeneratedKeys() method in the RDMStatement class #1427 rdm_sqlDeleteAllRowsFromDatabase() was missing an implementation #1432 cursorMoveToKey functions now return eINVCURSORKEY when a key that isn't a part of the cursor's table is specified 14.0.2 11-Nov-2016 Issue Description ----- ---------------------------------------------------------- #527 Remove restrictions for circular tables #1173 Port to VxWorks and VxWorks RTP #1251 rdm-export should be able to export into xml #1267 rdm_dbSetOptions update #1281 Should not mark pages as modified when scanning freespace #1282 rdm-getschema creates an incorrect schema when a FOREIGN KEY contains multiple columns #1284 JNI doesn't allow multiple connections within a process #1285 SQL: Read lock timeout takes twice as much as the specified timeout value #1286 Executing "CREATE INDEX" following "CREATE TABLE" causes an assertion failure #1287 Key/value pair parsing causes "invalid key/value pair" on Windows #1288 Journal recovery takes forever #1291 Retrieving a FLOAT column with JNI throws a "NoSuchMethodError" exception #1292 Add an option to rdm-getschema to generate SQL-compliant schema #1293 rdm-export clashes when the --table option specifies an invalid table #1296 Implement the getGeneratedKeys() method in the RDMStatement class #1325 Port to QNX using project files #1327 Errors trying to connect DBeaver via JDBC #1333 General compatibility issues with DBeaver #1334 rdm-getschema doesn't accept the "--docroot" option #1335 JDBC: Implement setFetchSize() #1336 ADO .NET library doesn't work well with 32-bit Windows #1337 We do not display the column names in the case that no rows was returned #1345 Add support for CREATE DATABASE IF NOT EXISTS... #1354 rdm-create ignores the "--docroot" parameter when creating a local database #1357 Add a way to set the idindex page cache size #1358 Allow embedded devices to have a lower idindex flush threshold #1359 Allow embedded devices to have a lower pack bulk write threshold #1361 Add a method to the Db class to get the associated TFS object #1362 The Db class should only have a non static drop method #1363 SQL performance tuning #1364 C++ tests where we do not explicitly hold on to the tfs object segfaults #1365 C++ test where we do not explicitly hold on to the db object before we release a cursor segfaults 14.0.1 31-Aug-2016 Issue Description ----- ---------------------------------------------------------- #425 Port to INTEGRITY #1009 Segmentation fault in rsql-pl-forStatementNestedTest.sh: #1174 Port to VxWorks RTP #1211 Implement SET TRANSACTION ISOLATION LEVEL #1219 Change the SQL_DEFAULT_TXN_ISOLATION to "SERIALIZABLE" in SQLGetInfo() #1223 Removing name from rdm-regodbc #1224 The C++ transaction implementation may call rdm_transFree after rdm_dbEnd have been called #1225 Document whether it is safe to call rdm_transFree after rdm_dbEnd have been called #1239 Thread unsafe code when doing locking #1240 Revive the "Show Plan" option in rdm-sql #1242 psp_dirCreate and psp_dirRemove should be called without trailing slash #1243 Update the native methods to work with the current RDM library #1245 Thread unsafe code when opening a database #1247 Wrong error code when the shared memory transport is not implemented #1248 Re-arrange the ODBC code for clarity and maintainability #1253 select typeof(12) segfaults rdm-sql #1254 Opening a database where we have RDM_NO_UNICODE defined with a schema that contains wchar_t #1256 Two instances of rdm-sql running can cause TFS to hang on second close #1257 Unaligned access on Sparc Solaris gives bus error #1258 Unaligned access in rdmyacc gives bus error on Sparc Solaris #1259 Querying the virtual table sys_fkey may crash SQL #1260 A more general solution to protect the docroot #1261 psp_atoi64 may not be reentrant on all platforms #1264 floatToString is not portable with respect to -NAN #1265 Most of the options specified for Db::SetOption is not applicable to the C++ interface #1269 Change the default DSN from "RDM" to "RDM14.0.0" #1271 SELECT using qualified column names with GROUP BY fails #1272 biomeriux example #1275 Add a GetTransactionStatus method to the Db class #1276 Add a GetLockStatus method to the Cursor class #1277 rdm-tfs quietly exits when an invalid docroot is specified #1278 rdm-export fails to export/import the BOOKSHOP database