Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix fails to delete if SQLite file open for read on Windows closes #512 #513

Merged
merged 1 commit into from
Feb 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
Expand Up @@ -1046,6 +1046,7 @@ Version 4.7 Feb 2023

Pull Requests & Issues

HammerDB 4.7 fails to start on Windows if 4.6 SQLite files present #513 (#512)
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)
Expand Down
8 changes: 7 additions & 1 deletion src/generic/geninit.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,16 @@ if { $genericdictdb eq "" } {
#SQLite found, check whether the schema versions from SQLite and XML are consistent
if { $sqlite_hdb_version ne $hdb_version } {
puts "The existing SQLite DBs are from version $sqlite_hdb_version. SQLite DBs will be reset to $hdb_version."
#Close SQLite before deleting else get permission denied on Windows
if { [catch {hdb close} message]} {
puts "Failed to close SQLite: $message"
}
foreach { dbname } { generic database db2 mariadb mssqlserver mysql oracle postgresql } {
set dbfile [ CheckSQLiteDB $dbname ]
#Remove SQLite file
file delete $dbfile
if { [catch {file delete $dbfile} message]} {
puts "Error deleting SQLite file from $sqlite_hdb_version: $message"
}
}
#After remove old SQLite, save genericdict to SQLite DB
Dict2SQLite "generic" $genericdict
Expand Down
8 changes: 7 additions & 1 deletion src/generic/geninitcli.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,16 @@ if { $genericdictdb eq "" } {
#SQLite found, check whether the schema versions from SQLite and XML are consistent
if { $sqlite_hdb_version ne $hdb_version } {
puts "The existing SQLite DBs are from version $sqlite_hdb_version. SQLite DBs will be reset to $hdb_version."
#Close SQLite before deleting else get permission denied on Windows
if { [catch {hdb close} message]} {
puts "Failed to close SQLite: $message"
}
foreach { dbname } { generic database db2 mariadb mssqlserver mysql oracle postgresql } {
set dbfile [ CheckSQLiteDB $dbname ]
#Remove SQLite file
file delete $dbfile
if { [catch {file delete $dbfile} message]} {
puts "Error deleting SQLite file from $sqlite_hdb_version: $message"
}
}
#After remove old SQLite, save genericdict to SQLite DB
Dict2SQLite "generic" $genericdict
Expand Down
8 changes: 7 additions & 1 deletion src/generic/geninitws.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,16 @@ if { $genericdictdb eq "" } {
#SQLite found, check whether the schema versions from SQLite and XML are consistent
if { $sqlite_hdb_version ne $hdb_version } {
puts "The existing SQLite DBs are from version $sqlite_hdb_version. SQLite DBs will be reset to $hdb_version."
#Close SQLite before deleting else get permission denied on Windows
if { [catch {hdb close} message]} {
puts "Failed to close SQLite: $message"
}
foreach { dbname } { generic database db2 mariadb mssqlserver mysql oracle postgresql } {
set dbfile [ CheckSQLiteDB $dbname ]
#Remove SQLite file
file delete $dbfile
if { [catch {file delete $dbfile} message]} {
puts "Error deleting SQLite file from $sqlite_hdb_version: $message"
}
}
#After remove old SQLite, save genericdict to SQLite DB
Dict2SQLite "generic" $genericdict
Expand Down