HammerDB change history Version 1.0, July 2003 First general release --------------------------------------------------------------------- Version 1.01 August 2003 Added TPC-C stored procedures and driver script Reduce size of License window that was too long for some screens Added option to pause between user logins for a longer ramp-up time --------------------------------------------------------------------- Version 1.02 August 2003 Bug fix where Iterations picked up Repeat Delay in Virtual User options Bug fix in TPC-C Stock level procedure and driver script --------------------------------------------------------------------- Version 1.03 August 2003 Added Splash screen Broken script down into components for modular development --------------------------------------------------------------------- Version 1.04 August 2003 Bug Fixes [ 791801 ] double quoted SQL not escaped when parsed [ 791802 ] bind variable incorrectly parsed [ 791808 ] Startup error if run from different directory --------------------------------------------------------------------- Version 1.05 August 2003 Modifications to hora_vu.tcl component for improved thread independence. --------------------------------------------------------------------- Version 1.06 August 2003 Update to Transaction Counter --------------------------------------------------------------------- Version 1.07 September 2003 Bug Fix [ 803038 ] New order updates order_id from every item Modified ROWID to UROWID in the delivery_sp.sql to allow flexibility in configuring data objects. --------------------------------------------------------------------- Version 1.10 October 2003 Bug Fix [ 812038 ] Fetch from incorrect cursor number Modified TPC-C New Order procedure to use DBMS_RANDOM package for efficiency. Added tkcon based console. --------------------------------------------------------------------- Version 1.10-1 November 2003 Bug Fix [ 816539 ] new orders rollback --------------------------------------------------------------------- Version 1.11 February 2004 Added networking functionality and operating modes as a base for remote distribution of files and remote control of multiple clients. Added Master Distribution functionality to distribute files between clients. Tablelist package incorporated into code to reduce external package requirements Tested with TCL 8.4.5 and TK 8.4.5 Tested with Oracle 10g on Linux --------------------------------------------------------------------- Version 1.11-1 March 2004 Updated networking and operating modes for full functionality --------------------------------------------------------------------- Version 1.12 May 2004 Tested with TCL 8.4.6 and TK 8.4.6 Added TPC-C Schema Creation Implemented thinking and keying time in TPC-C Driver --------------------------------------------------------------------- Version 1.14 June 2004 Bug Fixes [ 965810 ] title bar fails to update on mode change [ 965792 ] scrollbars obscured on windows [ 965790 ] file load and save fails on windows [ 965789 ] Remote distribution fails with some hostnames [ 965780 ] splash screen obscured [ 965779 ] tablelist obscured on windows --------------------------------------------------------------------- Version 1.15 August 2004 Tested with TCL 8.4.7 and TK 8.4.7 Modified Threading approach so all Tk and file acces within the worker threads are passed to the master thread Improved recognition of puts command in threads Improved Test TCL code feature Added text based logging in addition to window output Implemented remote commands to be called before local commands Bug Fixes [ 1002809 ] Loader Progress Meter Max set to incorrect value [ 1002258 ] #2.5.1.1 Payment procedure infinite loop [ 1002804 ] Setting non blocking on /dev/null errors on MAC OS [ 785408 ] Some quotes need escaping --------------------------------------------------------------------- Version 1.15-1 August 2004 [ 1019356 ] ora-01000 maximum open cursors exceeded on tpcc creation --------------------------------------------------------------------- Version 1.15-2 August 2004 [ 1019360 ] Some conversion fails when cursor number re-used --------------------------------------------------------------------- Version 1.16 October 2004 Modified Output Logging with selected logfile reported in message box TPC-C driver keying and thinking items applied consistently Improved error handling in TPC-C driver script Grouped mathematical expressions in TPC-C driver script for efficiency Improved performance of TPC-C schema creation and loading script Bug Fixes [ 1053384 ] image id not populated in item table [ 1053732 ] delivery transaction errors after long running TPC-C tests --------------------------------------------------------------------- Version 1.17 November 2004 User output modified from multiple windows to a single window Unwinding threads set to default when threads are closed Check added to prevent threads being started while previous threads running Transaction counter modified to work in a thread Changed Oracle SID to Oracle Service Name in Schema creation options Checks for correct TCL version and packages added on startup Bug Fixes [ 1066896 ] Threads don't exit if not unwound [ 1063380 ] Seg Fault results from displaying user output --------------------------------------------------------------------- Version 1.20 November 2004 Oracle 10g instant client compatible executable installer released --------------------------------------------------------------------- Version 1.20-1 December 2004 Bug Fix [ 1087250 ] lib directory at wrong level --------------------------------------------------------------------- Version 1.21 February 2005 Updated Binaries to tcl8.4.9, tk8.4.9, thread2.6.1, oratcl41 (compiled against 10.1.0.3) Bug Fix [ 1114811 ] Loader looks for 10.1.0.2 instant client [ 1114815 ] DBMS_RANDOM seed can be same for 2 users [ 1116785 ] RAC transactions not recorded --------------------------------------------------------------------- Version 1.21-1 February 2005 [ 1144395 ] DBMS_RAMDOM.initialize overflow [ 1144337 ] Virtual user output misaligned --------------------------------------------------------------------- Version 1.22 April 2005 Updated Binaries to tcl8.4.9, tk8.4.9, thread2.6.1, oratcl43 (compiled against 10.1.0.3) Bug Fix [ 1185363 ] can't read "rac" no such variable [ 1184277 ] TPC-C schema creation slow due to MakealphaString [ 1186876 ] no data found in new order transaction --------------------------------------------------------------------- Version 1.23 May 2005 Modified Transaction counter and user output for visibility Removed Menu from console Bug Fix [ 1193392 ] GUI stalls when virtual users created --------------------------------------------------------------------- Version 1.24 July 2005 Updates to trace file conversion procedure for error checking Added PL/SQL version of the TPC-C loader program Bug Fix [ 1235901 ] $ symbol in SQL incorrectly detected as TCL variable [ 1222747 ] date formats incorrectly parsed as bind variables --------------------------------------------------------------------- Version 1.25 July 2005 Literal NULL values in TPC-C Driver script replaced with valid NULLs Bug Fix [ 1244016 ] ORA-06502 generated by literal NULL's --------------------------------------------------------------------- Version 1.26 August 2005 Updated Binaries to tcl8.4.11, tk8.4.11, thread2.6.2, oratcl43 Bug Fix [ 1222747 ] date formats incorrectly parsed as bind variables - REOPENED --------------------------------------------------------------------- Version 1.30 June 2006 Option added to transaction counter to autorange data points or anchor y axis to zero Updated Binaries to tcl8.4.13, tk8.4.13, thread2.6.3, oratcl44 Bug Fix [ 785404 ] TCL threads error in SMP kernel - REOPENED [ 1478591 ] Trace file format changed in Oracle 10.2 --------------------------------------------------------------------- Version 1.31 February 2007 Added TPC-H schema creation, driver script and query counter Added XML Configuration file Added TclCurl libraries and reduced minimum user and repeat delay to Zero --------------------------------------------------------------------- Version 2.0 July 2007 Brand new interface and graphics using Tile Bug Fix [1737907] autorange data points does not get picked up from config.xml [1737904] tval error when measuring RAC transactions [1737901] Memory Leak running workloads [1689433] Scale Factor for TPC-H driver missing from config.xml --------------------------------------------------------------------- Version 2.1 February 2008 Full TCL port of TPC-H schema creation and driver script without requiring dbgen or qgen binaries Updated Binaries to tcl8.5.0, tk8.5.0, thread2.6.5 Tested with Oracle 11g Bug Fix [1810359] Transaction Counter Freeze in Hammerora v2.0 [1810352] Master/Slave Mode "couldn't open socket: connection refused" --------------------------------------------------------------------- Version 2.2 October 2008 Added support for the MySQL Database/InnoDB Storage Engine including TPC-C schema creation and driver script and MySQL transaction counter, Added rdbms tag to config.xml – Oracle or MySQL, Updated editor to Benchmark Options to include RDBMS selection Added support for tclwebtest web application testing and tested with recorded scripts from TwTR, removed TCLCurl support Added thread shared variable (tsv::get application abort) to enable termination of running scripts Changed warehouse slider in TPC-C schema from 100 to 500 Updated headers in scripts from 8.4 to 8.5 Consolidated Mode Options into 1 dialog box Corrected redefinition of puts in threads to work more effectively with channels and only redirect stdout and stderr. Corrected on Windows “yesno” Dialog Box Header shows title bar “Error” Corrected Virtual Users in display start from user 1 not 0 Remove Unwind Threads Checkbox, unwind and exit threads deprecated, replaced with thread release Remove session serialize in TPC-H driver scrip as serialization prevents parallel query on more than 1 node in RAC Improved Transaction Counter start and stop times Bug Fix [ 1967810 ] error: package "tile" isn't loaded statically --------------------------------------------------------------------- Version 2.3 May 2009 Tuned and added Multithreaded TPC-C Schema Build for Oracle and MySQL Added new random procedure to TPC-C/H Driver Scripts Updated standsql proc in TPC-C/H Driver to preset fetch value Consolidated TPC-C menus into Options for build and Driver Added TPC-C script with AWR snapshots for Oracle Added force parallel query to TPC-H Driver Added more meaningful error message when attempt is made to run an empty script --------------------------------------------------------------------- Version 2.4 July 2010 Updated Binaries to: tcl8.5.8, tk8.5.8, thread2.6.5, oratcl4.5, mysqltcl 3.05 (compiled against MySQL 5.1) Bug Fixes [ 3006379 ] TPCC-C Schema does not create properly [ 2882092 ] Fix AWR snapshot selection statement Fixed data too long for column os_ol_delivery_d_array at row 15 Added Autopilot Feature to permit repeat testing against a sequence of virtual users Updated Console code to permit execution against non exact TCL version Improved performance of Oracle TPC-C data load with Oratcl 4.5 and increase number of Warehouses on slider to 5000 Modified MySQL TPC-C Schema for performance and improved concurrency with prepared statement updates and modified indexing Updated MySQL prepared statements to commit at same rate as Oracle tests Added MySQL Timed Test Script Option Added TPC-C NOPM (New Order per Minute) count to both Oracle and MySQL tests to provide a fair comparison between Oracle and MySQL tests Updated graph to permit higher transaction numbers generated by MySQL --------------------------------------------------------------------- Version 2.4.1 November 2010 Bug Fixes [ 3037027 ] can't read "apmode": no such variable [ 3063387 | 3066703 | 3110299 ] TPC-C script needs to be run with fixed NLS_LANG setting [ 3105537 ] Cursor Performance in MySQL Delivery Procedure [ 3109512 ] Error in NURand Function --------------------------------------------------------------------- Version 2.5 December 2010 Bug Fixes [ 3139122 ] Incorrect Primary Key Order in MySQL NEW_ORDER Table [ 3132726 ] hammerora-2.4.1-Linux-x86-64 cannot be installed 64-bit only [ 3138744 ] MySQL TPC-C Driver Script Connects Twice per User Added Storage Engine Option to MySQL TPC-C Schema build Changed "Number of Threads" to "Virtual Users to Build Schema" in Schema builds for clarity Added Number of Virtual Users to result of TPC-C timed driver workloads Multithreaded and tuned Oracle TPC-H Schema build Added NLS Settings to TPC-H build and driver scripts Altered Oracle TPC-H driver script so timing does not overrun buffer for long queries Fixed Colours on Windows Menus --------------------------------------------------------------------- Version 2.6 April 2011 Added TPC-H multi-threaded schema creation, driver script and query counter for MySQL Updated Oracle TPC-H schema to add same constraints as MySQL TPC-H schema. Modified Oracle TPC-H refresh function to adhere to constraints Added partitioning option to order_line table of Oracle TPC-C workload for scalability on high-performance servers --------------------------------------------------------------------- Version 2.7 June 2011 Updated Binaries to: tcl8.5.9, tk8.5.9, thread2.6.6, oratcl4.5, mysqltcl3.05 tclodbc2.5.1 for Linux x86 and x86-64 and Windows x86 and x86-64 Significant performance and scalability improvements with Windows binaries to equivalence of Linux platform Bug Fixes [ 3286502 ] Double Connections on MySQL Schema Creation [ 3286500 ] Suboptimal Partitioning Key for Oracle Schema [ 3306467 ] Setting mysqldriver to "timed" in xml is not registered [ 3306468 ] MySQL rampup and duration not picked up from XML [ 3316980 ] Repeat tests cause first user to complete too early Added support for Microsoft SQL Server including TPC-C Workload Default Theme set to xpnative on Windows. Fixed Menu backgrounds and colours for consistency on both Windows and Linux Moved checking of all database package loading into the driver scripts outside of the main application so MySQL and SQL Server support does not check for Oracle libraries and vice versa Added partitioning option to order_line table of MySQL TPC-C workload for scalability on high-performance servers Modified Oracle TPC-C workload to open a cursor and parse each statement once, instead of doing each time the statement is called. Modification made to provide a similar workflow to new SQL Server TPC-C workload In Oracle TPC-C workload completion of timed workload will cause workers to complete irrespective of whether checkpoint when complete option has been selected --------------------------------------------------------------------- Version 2.8 December 2011 Bug Fixes [ 3415476 ] Trace File Conversion fails to pick up some bind variables GUI Enhancements to make creating and running tests a more logical step by step process on feedback whilst removing external references to thread IDs --------------------------------------------------------------------- Version 2.9 February 2012 Added support for Microsoft SQL Server TPC-H workload Removed optimizer_index_cost_adj parameter setting from Oracle TPC-H workload Changed Colours in TPC-H Query Counter to default database colours Updated TPC-H workloads to create view REVENUE(STREAMID) for Query 15 Updated Oracle and MySQL TPC-H workloads to drop view created by Query 15 Added Timings for TPC-H Refresh Procedure for all workloads Updated SQL Server TPC-C build to reduce row counts for batch inserts to improve performance Altered SQL Server TPC-C Driver Script to remove incorrect reference to Oracle --------------------------------------------------------------------- Version 2.10 March 2012 Added Binaries : pgtcl2.0.0 Bug Fixes [ 3493335 ] TPC-H does not log all completion times Feature Request [ 3295774 ] Add system username (TPC-C Oracle) [ 3495048 ] Create Database - option Added support for PostgreSQL TPC-C workload Moved logo image data out of source code into separate file --------------------------------------------------------------------- Version 2.11 July 2012 Bug Fixes [ 3539029 ] MySQL TPCH currency values truncated [ 3538644 ] TPCH Queries do not run in correct ordered set sequence [ 3538643 ] L_DISCOUNT AND L_TAX value is incorrect in Linetem table [ 3538640 ] MySQL TPC-H schema creation may fail due to thread count [ 3535830 ] problems with case-sensitive MS SQL in v2.10 for Win x64 [ 3521766 ] SQL Server Query 1 reports arithmetic overflow error convert [ 3521765 ] SQL Server TPC-H Queries 10,18,20 don't have parallel option Added support for PostgreSQL TPC-H workload with Greenplum compatibility --------------------------------------------------------------------- Version 2.12 December 2012 Bug Fixes [ 3591389 ] Oracle and SQL TPC-H Driver doesn't display verbose output [ 3521766 ] SQL Server Query 1 reports arithmetic overflow error convert Changed Application name from Hammerora to HammerDB Updated Splash Screen with new HammerDB logo to reflect name change Added HammerDB icon to be displayed when minimised and in corner of Windows version Added support for TimesTen database with TPC-C workload Added support for Redis NoSQL database with TPC-C workload Added new Redis interface package to lib directory Moved setting of variable d_id up by one line in MySQL delivery procedure in TPC-C workload Changed default file filter from *.trc to *.tcl Updated default SQL Server client to version 11 for SQL Server 2012 in config.xml --------------------------------------------------------------------- Version 2.13 December 2012 Bug Fixes [ #92 ] O_C_ID has incorrect value in TPC-C schema --------------------------------------------------------------------- Version 2.14 June 2013 Updated Binaries to: tcl8.6, tk8.6, thread2.7.0 (included with tcl8.6), oratcl4.5, mysqltcl3.052 pgtcl2.0.0 tclodbc2.5.1 for Linux x86 and x86-64 and Windows x86 and x86-64 Bug Fixes [ #93 ] Oracle PL/SQL Schema Build Fails on Index Build [ #94 ] SQL Server Transaction Counter reports Negative Number then Zero [ #95 ] pgsqlXXX is not a valid postgresql connection Removed tclodbc builds on Linux releases and greyed out SQL Server benchmark option to make tclodbc and SQL Server Windows only options Added Order Line Tablespace option to Oracle Database TPC-C schema to enable partitioned Order Line table to be placed in a separate cache with a different block size from the standard cache. Implemented TimesTen TPC-C Partitioning Option Implemented TimesTen TPC-H Workload Added SQL Server TPC-C workload from schema and Stored Procedures provided by Thomas Kejser under "updated" option. Regular schema remains available under "original" option --------------------------------------------------------------------- Version 2.15 December 2013 Bug Fixes [ #96 ] Trace conversion fails to detect bind variable when field name and bind variable reversed [ #97 ] TPC-C driver script experiences mutex contention checking for abort button press at very high transaction rates [ #98 ] Creating separate order line tablespace for oracle fails as quota not granted during build [ #99 ] Transaction Counter Stopping error given when virtual user reuses thread id previously used by the Transaction Counter Added option to cancel running virtual users when attempting to restart virtual users and existing ones are already running in the background. Ability to cancel threads first enabled in TCL Threads 2.7.0 with TCL 8.6 Added contribution by Roberto Dyke to improve 3D Ribbon perspective on transaction counter --------------------------------------------------------------------- Version 2.16 February 2014 Added TCL aware Script Editor Window with keyword and control highlighting Added gradient tint to end of transaction counter graph Added metrics agent and display to monitor CPU utilisation --------------------------------------------------------------------- Version 2.17 May 2015 Bug Fixes [ #102 ] SQL Server 1TB Schema Build Fails [ #103 ] CPU Metrics fails on Linux with sysstat 10.1.2 and higher and/or more than 122 CPUs [ #104 ] HammerDB shows interactive dialog to terminate virtual users in slave mode [ #105 ] Oracle AWR driver script only reports TPM from the first instance when running against RAC Increased permitted virtual user sequence from 30 to 60 virtual users in autopilot Updated PostgreSQL FILLFACTOR values as advised by PostgreSQL architects Added support for running autopilot mode from the command line contributed by Wes Vaske Added support for Trafodion SQL on Hadoop database with TPC-C workload --------------------------------------------------------------------- Version 2.18 July 2015 Bug Fixes [ #106 ] MySQL foreign key constraint fails with InnoDB on TPCH schema build Added alternative graphical interface theme based on ttk black theme, selectable as modern in config.xml Moved external metrics interface into main HammerDB application, removed metrics directory and changed to agent Made Transaction Counter and Metrics tabs detachable to enable viewing performance of both during runs Added option to run virtual users, autopilot, transaction counter and metrics from treeview. Treeview now only greyed out when virtual users running rather than created.with only virtual user options disabled at creation Virtual users can now be run before virtual user creation with virtual user creation taking place beforehand automatically Added commenting to script editor by click with button-3, drag along the line numbers to toggle hash character Some code modularisation to ease process of adding support for new databases, hdb-modules directory created and code suitable for package creation moved into modules --------------------------------------------------------------------- Version 2.19 December 2015 Added support for IBM DB2 with TPC-C workload --------------------------------------------------------------------- Version 2.20 May 2016 Bug fixes [ #107 ] MySQl 5.7.3 breaks compatibility with PRIMARY KEY must be NOT NULL [ #108 ] Monitoring Virtual User disconnects during DB2 TPCC schema build In DB2 TPC-C workload CREATE PROCEDURE NEWORD replaced with CREATE OR REPLACE PROCEDURE NEWORD so that the statement does not fail if the procedure already exists. Added support for IBM DB2 TPC-H workload Added scaling factor for physical units to pixels on different displays --------------------------------------------------------------------- Version 2.21 Nov 2016 Bug fixes [#109] Exit on Oracle Error not applied when set in config.xml [#110] Running autopilot from master only kills virtual users in local instance [#111] Oracle AWR Driver script reports double TPM when running against RAC [#112] Metrics: too many nested evaluations (infinite loop?) Added option to run cloud analytic query test on Oracle,MySQL(Aurora),PostgreSQL(Redshift) Added flat file schema data generation for larger datasets Added improved error reporting for PostgreSQL connections Added improved error reporting for MySQL connections Duplicate count_ware variable removed from XML Corrected typos in driver scripts referring to incorrect databases --------------------------------------------------------------------- Version 2.22 Jan 2017 Updated Redshift Cloud Analytic queries with the ones published by Oracle later than the original Oracle only ones were published Added TclODBC package for SQL Server on Linux Updated GUI to enable SQL Server on Linux option Removed mssqls_schema XML config parameter Added mssqls_linux_server,mssqls_linux_athent,mssqls_linux_odbc to configuration for Linux default Deprecated original SQL Server TPC-C schema as incompatible with bulk load Thomas Kejser SQL Server TPC-C schema set as default for all platforms Corrected setting of no_d_next_o_id in SQL Server TPC-C Neword stored proc Added SQL Server TPC-C In-Memory OLTP (Hekaton) Schema Added identity column to SQL Server TPC-C History for Primary Key Added mssqls_imdb mssqls_bucket mssqls_durability in-memory options Set autocommit to on for SQL Server Timed TPC-C to view change in NOPM values for In-memory Modified SQL Server TPC-C schema to all lower case for binary collation use Modified SQL Server TPC-H schema to all lower case for binary collation use Modified SQL Server TPC-H queries to replace count() with count_big() Added option to create TPC-H schema as clustered colunmstore --------------------------------------------------------------------- Version 2.23 Jun 2017 Bug fixes [#113] SQL Server updated delivery stored procedure has incorrect predicate Added option to use Hash Clusters to Oracle TPC-C Schema Added Use All Warehouses option to timed driver scripts to increase I/O Added Time Profile option to timed driver scripts to report response times Modified PostgreSQL user and database creation to be compatible with AWS rds_superuser --------------------------------------------------------------------- Version 3.0 Apr 2018 Bug fixes [#114] Metrics connection is lost on Windows server [#115] wrong # args error when selecting Times Ten compatibility in Oracle [#116] Incorrect time displayed in long running autopilot [#117] Only Basic Fonts used on Linux [#118] Oracle Hash Clusters schema does not build when warehouses not divisible by 100 [#119] DB2 Can edit multiple tablespaces without selecting partition first [#120] ODBC with SQL Server fails to connect to non-standard Port [#121] Oracle fails to connect to service name with dot notation [#122] DB2: SQL0304N A value cannot be assigned in Delivery Stored Procedure [#123] MySQL com_commit parameter better than handler_commit for TPM [#124] MONREPORT option for Db2 always greyed out Updated License to GPL v3 Updated Binaries to: tcl8.6.8, tk8.6.8, thread2.8.2, oratcl4.6, mysqltcl3.052 pgtcl2.1.1 tclodbc2.5.2, db2tcl2.0.0, redis 0.1 for Linux x86-64 and Windows x64 Refactoring to modularise interface Added Command Line Interface GUI Enhancements and updated interface and icons on Windows and Linux Standardised workloads to timed and test, adding monitor virtual user to timed Added option to included timestamps in log Set driver script to auto load after driver options are completed Added option to connect direct to Azure database for SQL Server Modified Oracle SLEV stored procedure to return Stock Count Updated transaction counter display and improved calibration of output data Deprecated Trafodion support can be uncommented in database.xml to enable unsupported --------------------------------------------------------------------- Version 3.1 Oct 2018 Bug fixes [#125] Microsoft VCRUNTIME140.dll missing in HammerDB v3.0 [#126] SQL Server reports TPM=0 as transaction count exceeds 32-bit integer [#127] Transaction Counter Refresh Value not detected from XML config [#128] PostgreSQL result handle leak in TPC-C from intentional 1% error [#129] User Delay and Repeat Delay Crossed in XML and GUI [#130] Unknown -under option in console [#131] Duplicate Files with incorrect prefix in MySQL and Redis Directories Added Oracle Database Metrics based on Ashmon by Kyle Hailey, used with permission to add as GPLv3 --------------------------------------------------------------------- Version 3.2 Jul 2019 Bug fixes [#132] Running buildschema in CLI for TPC-H has incorrect VU count [#133] Use all warehouses omits warehouse 1 and fails if more VUsers than warehouses [#134] Buildschema in CLI errors if 1 virtual user and more than 1 warehouse [TPC-Council#58] Bug when building TPC-C and TPC-H on Azure Updated time profiler to report percentile values at 10 second intervals Updated PostgreSQL Oracle SLEV Stored Procedure to return stock count Updated hammerdbcli to enable autostart with script Added PostgreSQL v11+ compatible Stored Procedures to use instead of Functions Added HTTP Web Service interface --------------------------------------------------------------------- Version 3.3 Oct 2019 Updated Binaries to: tcl8.6.9, tk8.6.9, thread2.8.4, oratcl4.6, mysqltcl3.052, pgtcl2.1.1, db2tcl2.0.0, redis 0.1 Issues TPC-Council#44 Event driven virtual user and connection scaling with promise package TPC-Council#72 HammerDb crashes in tclodbc - converted SQL Server TPC-C/TPC-H build and driver to tdbc::odbc TPC-Council#75 TPC-H cannot be executed for AWS RDS Oracle --------------------------------------------------------------------- Version 4.0 Oct 2020 Updated Binaries to: tcl8.6.10, tk8.6.10, thread2.8.5, oratcl4.6, mysqltcl3.052, pgtcl2.1.1, db2tcl2.0.0 Pull Requests & Issues Inclusive Language Updates (#152) Add runtimer and waittocomplete routines to CLI (#149) HammerDB CLI on Windows can have incorrect colours (#148) Update SQL Server ODBC Driver (#140) Fix XML closing tags for sprocs and connpool (#139) Update SQL Server library version number for TCL8.6.10 (#138) Update versions, changelog and OSS-TPC-x workloads (#137) update dbms_random for PostgreSQL neword infinite loop (#136) multiple labelled connections / connect pool feature (#135) Use Existing User and DB in Postgres (#132) Make column order in stock_i1 index in PostgreSQL consistent with Oracle (#124) Fix temp environment variables not detected (#126) Adding docs directory and documentation files (#121) Fix for Issue #118 using diset with variables with spaces (#119) Add partitioning hints in PostgreSQL neword transaction (#115) Format details repo (#106) Deprecated Redis (#105) Reverse print out of metrics to put NOPM ahead of TPM (#104) MySQL prepared statements and socket option (#98) Partitioning for Oracle ORDERS and HISTORY (#97) PostgreSQL prepared statements for functions and tablespace option for schema builds (#95) Refactor Oracle and Postgres procedural code for performance (#92) Added Master/Slave Modes to CLI (#91) Added Geomean calculation to TPC-H workloads. (#86) Fix distribution of Warehouse across VUs for All Warehouse option. (#82) Consider changing "Benchmark Options" from TPC-C or TPC-H to something that underscores "based on TPC-C/TPC-H" (#46) GUI HD Display (#19) --------------------------------------------------------------------- Version 4.1 April 2021 Pull Requests & Issues Update ora_timeprofile variable for runstep compatibility (#228) Extended Time Profiling as per Issue #224 (#225) Fix for Issue #216 Unkown prepared statement handler with connect pool (#217) Add TX Counter to CLI and TX Counter logging (#215) Adds feature enable Variable Load/Stress Testing enhancement workload (#211) Fix for Issue #194 Postgres datatype change from number to integer (#204) Swap column order in stock index in pgoltp.tcl (#193) Proposed solution to #189 - Wrong AWR Snapshots listed (#190) Update PostgreSQL Data Types and Hash Partition for Issue #187 (#188) Add limit clause to TPC-H Oracle queries (#186) Proposed fix to Issue #184 (#185) Update CLI runtimer to asynchronous (#180) Add task manager module (#178) Add bgerror to CLI (#177) Add indexes to PostgreSQL Foreign Keys (#170) Fix distributescript applyctexthighlight error (#169) --------------------------------------------------------------------- Version 4.2 June 2021 Pull Requests & Issues Xtprof timer can retain old data #253 (#254) Update to increase TPROC-C Schema Size Limits for Issue #250 (#251) Fix for Timing Data Times Out (#248) Fix for Issue #242 can't read tc_flog no such variable #242 (#243) Add MariaDB as a separate database #54 (#234) --------------------------------------------------------------------- Version 4.3 Nov 2021 Pull Requests & Issues v4.3 fix - encapsulate graphical metrics in namespace #283 Add performance metrics for PostgreSQL #279 (#8) Add CLI to Web Service with SQLite repository for output, timing and transactions #278 (#145) Update for #264 [TPROC-H] MySQL create FKs after table load #274 (#264) Add sslmode support for PostgreSQL database #271 --------------------------------------------------------------------- Version 4.4 Feb 2022 Pull Requests & Issues Fix getcols can return zero, resulting in divide-by-zero #306 readline: only catch signals when using interact #303 Add optional Citus support #302 Build dataset using COPY instead of multi-row inserts for TPROC-C #301 Make Linux hammerdb executable work with spaces in PATH #298 Optimize MakeAlphaString #295 Standardize indentation of tcl files #292 --------------------------------------------------------------------- Version 4.5 Jul 2022 Pull Requests & Issues Add SSL options to MySQL #376 Fix for o_all_local value update and insert #375 (#374) SQL Server Schema/Stored Procedure Updates #372 (#371) Fix RAISEEROR error in Asynch connect #366 (#365) use correct transaction boundaries in MySQL / MariaDB and PG #356 Dependency build automation for Windows #362 (#37) Escape username and database name in PostgreSQL procedures #340 Added Dockerfile to build a HammerDB container and TPROC_C sample scripts to build schema and run tests #339 (#107) Save/load configuration to SQLite DB #336 (#3) set MariaDB autocommit to 1 for Monitor VU #333 Move history file tracking to interactive #332 (#320) Add SSL connection options to MariaDB #331 Dependency build automation for Linux #323 (#36) --------------------------------------------------------------------- Version 4.6 Nov 2022 Pull Requests & Issues Job Storage #453 (#420) Add Alternative python CLI interface #452 Fix for issue #451 (#450) Fix for keepalive issue #446 (#445) Improve CLI diset error message #437 Add drop schema functionality #430 Fix MySQL/MariaDB TX Count Error Handling on Connection #419 Deprecate CLI runtimer #415 Add set virtual user to available cpus #409 Passwordless MariaDB connection #408 Allow to skip CA for MariaDB #407 Add SQL Server encrypt connection and trust certificate #406 Remove reconnect for PostgreSQL on windows #402 Hdb docker #401 fix typos #388 --------------------------------------------------------------------- Version 4.7 Feb 2023 Pull Requests & Issues Jobs query for VU specific timing prints data twice, with second always in text #515 (#514) HammerDB 4.7 fails to start on Windows if 4.6 SQLite files present #513 (#512) Add Windows powershell driver script to sample scripts #511 (#510) Fix calculation of geomean in TPROC-H #504 Fix TPROC-H query 5 for Columnstore #503 Use db2tcl to create and drop database for DB2 #501 (#431) Improve Transaction counter look and feel and resize when window resized #494 (#487) remove trafodion configuration and files #485 (#484) MySQL Heatwave TPROC-H support #483 (#482) Query update for tpch columnstore benchmark #481 (#480) Add tkpath to build #478 Prevent CLI hang when scripts finishes before enters event loop #473 (#472) Updates to jobs for Docker scripts #471 Fix for Issue #467 CLI myerrproc and remote_command opmode #468 (#467) Update omitted Changelog for v4.6 release #466 Fixing queries for Columnstore issue 459 #460 (#459) Make jobs functionality modular #458 --------------------------------------------------------------------- Version 4.8 Jun 2023 Pull Requests & Issues Fix typo in Web Service port label #567 Add password blank to GUI #566 Fix commit 3de91e5 removed getchart help message #565 Fix User and Repeat delay reversed #564 Update Documentation to v4.8 #562 Allow using existing empty database for Db2 TPROC-C and TPROC-H #560 (#548) Enhancement for storing and retrieval of HammerDB results and configurations #558 (#352) MySQL/MariaDB L_ORDERKEY to BIGINT #556 (#551) Update mssqlsoltp.tcl #541 (#538) Auto scale factor for TPC-H (issue 23) #539 (#23) Fix doc bug for VU/warehouse count #535 (#534) Repair ora_compatible OSTAT procedure #531 Add jobs getchart command #530 Add CLI savescript and custommonitor commands #522 (#521) Create CONTRIBUTING.md #517 --------------------------------------------------------------------- Version 4.9 Oct 2023 Pull Requests & Issues Network Error When Loading Data #619 (#618) Remove Unneeded Indices From TPROC-H MSSQL #616 TPROCC MSSQLS BCP Load by Warehouse #614 Alter MSSQL TPCH Colstore Index Steps #613 Implement BCP Option for MSSQLS TPCH Load build database #611 (#593) Fix for TPROC-H calculates o_totalprice incorrectly #610 (#609) Add MariaDB/MySQL No Stored Procedures option to TPROC-C #602 (#600) Fix MySQL/MariaDB TPROC-H build FK error #599 (#598) Edited Dockerfile to install a specific version of msodbcsql18 #596 (#595) Added use_bcp default as true and enabled bcp with windows authentication #592 (#589) Skip blank lines in binds in recent Oracle trace files #591 (#590) Added Use bcp as a user option #587 (#584) Add Optional Invisible Primary Key to History for Replication in MySQL and MariaDB #586 (#580) Update precision of w_ytd to prevent numeric field overflow #585 (#577) Container file simplication #569 --------------------------------------------------------------------- Version 4.10 Feb 2024 Pull Requests & Issues Increase default CLI timeouts #668 (#667) Add support for Microsoft Entra authentication for SQL Server #665 (#662) Add schema and consistency checks for all databases for TPROC-C and TPROC-H #664 (#659) Add quotemeta function to escape special characters in passwords #658 (#561,#606) Add bcp -u option for SQL Server to trust the server certificate #653 (#651) MSSQL TPCH Create Advanced Statistics #652 MSSQLS TPCH Add Flag to Partition Orders and Lineitems #647 Add giset command to set generic dictionary settings #646 (#645) Add check to vurun for pre-existing threads #644 (#643) Add optional purge and write back for MariaDB TPROC-C database #642 (#640) Docker cloudtk docker gui #641 (#631) Fix call ash_fetch,error on Windows client running PostgreSQL metrics #638 (#637) Alter MSSQLS TPCH Schema to use Decimal not Money #634 --------------------------------------------------------------------- Version 4.11 June 2024 Pull Requests & Issues Added example scripts for checkschema for all databases #709 (#683) Adds Performance Profile for TPROC-C Jobs #707 (#661) Add Schema Existence Check for MySQL/MariaDB #706 Add CPU metrics to CLI, Jobs and automate start #705 (#704) Fix incorrect value for SQLite database #701 (#700) Persist VU settings across restarts #696 (#698) Add Database version to TPROC-C timed test #690 (#684) Fix RETURNING d_next_o_id in NEWORD bug #688 (#686) Fix missing close-brace in PostgreSQL XML Connect Pool option #682(#681) Update SVG and themes packages, Unify themes on Windows and Linux #680 (#679) Change GUI properties dailogs to tabbed #678 (#676) Add Support for oceanbase tpch enhancement #670 (#563) (#673) --------------------------------------------------------------------- Version 4.12 September 2024 Pull Requests & Issues Only enable job output for TPROC-C timed workloads #743 (#741) Add results to web service homepage #736 (#735) Job timing summary to report median values #733 (#732) Bug Fix, wrong timeout value assignment in xtprof module #730 Fixes GUI inline edit errors for MySQL and CLI for MySQL, MariaDB, Oracle, Db2 #725 Fix issues with PostgreSQL inline edit #723 (#720) Fix SQL Server database setting in GUI #722 (#721) Consolidate output for use all warehouses option #717 (#715) --------------------------------------------------------------------- Version 5.0 March 2025 Pull Requests & Issues Merge v5.0 Branch #777 Error in Virtual User 1:key "msperclick" not found #774 Free thread shared variables after xtprof run #766 (#765) ALTER DATABASE only if necessary enhancement #764 Add keepalive to datagenrun bug #759(#758) Add awbreezedark theme option to GUI enhancement #754 (#751) MSSQL TPCH Load does not work for Single User #752 Add indexes to orders table for SQL TPROC-H partitioned row store #750 (#749) Replace bcp executable with bulk insert for SQL Server builds #748 (#594) Updated Binaries and Packages to: Tcl9.0.1 TclS9.0.1 Tk9.0.1 TkS 9.0.1 awthemes 10.4.0 db2tcl 2.0.1.1 expect 5.45.4.1 mariatcl 0.1.1 mysqltcl 3.052.1 oratcl 4.6.1 pgtcl 2.1.1.1 tclpy 0.4.1 tclpyS 0.4.1 ticklecharts 3.1 tkblt 3.2.24 tkpath 0.3.3.1 twapi 5.0.7 for Linux x86-64 and Windows x64 --------------------------------------------------------------------- Version 6.0 June 2026 Pull Requests & Issues Add database metrics options for MySQL and MariaDB #885 Fix Web Service Jobs and Pipelines HTML Formatting #884 Add I/O Metrics (IOPS/MB/s) to Metrics #880 (#874) Fix arithmetic in PostgreSQL stock update #879 Fix profile compare form and hide unsupported from automation #878 Fix form warnings for proxy #877 Add CI/Pipeline Automation for MySQL #876 (#872) Add PostgreSQL CI/Pipeline automation #875 (#871) Fix pgsentinel discovery for PostgreSQL metrics #870 (#869) Improve performance profile comparison, response time reporting, and CI bug fixes #868 Auto fix PostgreSQL choice of functions or stored procedures #867 (#832) Fix Windows clearline in default COLOR #866 (#779) Standardise Cluster Connect Pool terminology #865 (#828) Add reservoir sampling, extended percentile support to timing profiles and boxplots #864 (#831) Add Active Session History (ASH) metrics viewer for MySQL and MariaDB #863 (#842) Remove arbitrary upper limit on num_vu for schema build #861 Add CI/Pipeline capabilities for MariaDB #860 (#845) Add Detailed System, Hardware, and Software Fields to Results #859 (#848) pg_vacuum runs on wrong database #856 (#855) Update ASH metrics for PostgreSQL 18 #854 (#841) Update TPROC-H GUI Options for all Scale Factors #835 (#833) Improve message if metstart fails because sysstat not installed #830 (#820) Add engine independent statistics to MariaDB TPROC-H #829 (#827) Disable FK checks for MariaDB/MySQL pre-created database builds #825 (#824) Fix invalid command wapp-url #818 (#816) Update Tcl/Tk and TkPath versions #810 (#809) Enable Web Service to run as SCGI application #808 (#807) Update ticklecharts package #805 Add handling of innodb_snapshot_isolation to MariaDB #797 (#778) Add catch to CLI stty command on Linux #796 (#792) Fix permission denied on loading database libraries on Windows #795 (#791) Copyright message UTF-8 #794 (#793) Docker Updates related to version 5.0 #789 (#771) Fix steprun replica timing #787 (#782) Updated Binaries and Packages include: Tcl9.0.2 TclS9.0.2 Tk9.0.2 TkS 9.0.2 ticklecharts 3.2.8 tkpath 0.4.1 for Linux x86-64 and Windows x64