Critical bug capable of deleting your data

[expired user #5611]'s profile image [expired user #5611] posted 13 years ago in General Permalink
Hi,
today I noticed a new bug:

Sometimes, Heidi assumes another table is "in focus" as the one currently highlighted in the table tree and subsequently performs tasks like truncating, showing data, etc. on the wrong table.

For example, table A is highlighted in the tree. But for some reason, Heidi thinks B is highlighted. If you click the refresh button in the data view tab, it produces a query of the sort "Select list of elements of table A FROM table B" which produces an SQL error 1054 (unknown column ... in field list).

This also happened to me earlier today while I was trying to empty table A! Heidi produced a query of the form "TRUNCATE table B" and I had to reload Table B's data from a backup!

While I don't know why Heidi confuses which table is focused in the tree, critical commands should make sure to check again which table the user means (i.e. is highlighted).

I've never noticed this misbehaviour before and assume this is a new bug.

Thanks
Steve
[expired user #5700]'s profile image [expired user #5700] posted 13 years ago Permalink
I've notice this bug a handful of times. Usually quite some time after, i.e. when my data is long gone!

Select database in the treeview. Right click a table and delete it. Focus/Highlight moves to the next table. Right click/delete this next table and if you'll see that the table actually being deleted is totally different (I presume the actually table selected will depend on what is on your list... it's possibly selected the first item in the tree?)

[expired user #5700]'s profile image [expired user #5700] posted 13 years ago Permalink
Just had another go with this to see if I can give more specific examples, but it seems fairly random which item in the treeview is selected - the item selected might even be a database, not just a table, so large amounts of data can be list in the blink of an eye.
lemon_juice's profile image lemon_juice posted 13 years ago Permalink
I have experienced this bug a few times as well, I don't know how new it is but it's been around at least a month or two. This is happening fairly often after I empty a table with right clicking on a table name in the tree. A usual scenario is like this:

1. I empty table A

2. Table A is still in focus, I select the Data tab.

3. Heidi gets already confused as it tries a SELECT which contains all fields from table A but the FROM clause actually contains the name of table B. Table B gets chosen by some random or unknown to me rule. Of course, the SELECT fails with an error.

4. Table A is still highlighted in the tree and when I try to empty it again or drop it then Heidi wants to empty/drop table B. At least it asks me correctly in the confirm dialog if I want to empty table B but some people might miss it.

Fortunately, I've never deleted any data in this way (probably because I pay special attention to any confirmation dialogs before deleting anything) but it can be dangerous.
[expired user #5611]'s profile image [expired user #5611] posted 13 years ago Permalink
I'm glad to see there is now further evidence for this bug by you guys. I almost thought it was only with me ;).
lemon_juice's profile image lemon_juice posted 13 years ago Permalink
This is a crasj happening after emptying a table, going to the Data tab, pressing the refresh button and clicking OK on the SQL error dialog window:

date/time : 2011-05-17, 21:52:58, 409ms
computer name : LEO-PC
user name : XXX <admin>
registered owner : XXX
operating system : Windows Vista Tablet PC Service Pack 2 build 6002
system language : Polish
system up time : 4 hours 40 minutes
program up time : 24 seconds
processors : 2x Intel(R) Core(TM)2 Duo CPU E8235 @ 2.80GHz
physical memory : 890/2028 MB (free/total)
free disk space : (C:) 8,96 GB
display mode : 1920x1200, 32 bit
process id : $1674
allocated memory : 70,41 MB
executable : heidisql.exe
exec. date/time : 2011-05-17 21:52
version : 6.0.0.3832
compiled with : Delphi XE
madExcept version : 3.0m beta 1
callstack crc : $700c8edd, $c7717683, $c7717683
exception number : 1
exception class : EAccessViolation
exception message : Access violation at address 00746CE5 in module 'heidisql.exe'. Read of address 00000000.

main thread ($1364):
00746ce5 heidisql.exe dbconnection 3676 +4 TMySQLQuery.IsNull
007e53f2 heidisql.exe Main 7161 +7 TMainForm.AnyGridGetText
0064b870 heidisql.exe VirtualTrees TCustomVirtualStringTree.DoGetText
0064abe8 heidisql.exe VirtualTrees TCustomVirtualStringTree.GetText
0064b9db heidisql.exe VirtualTrees TCustomVirtualStringTree.DoPaintNode
0064690e heidisql.exe VirtualTrees TBaseVirtualTree.PaintTree
0063de91 heidisql.exe VirtualTrees TBaseVirtualTree.Paint
004f328b heidisql.exe Controls TCustomControl.PaintWindow
004ed9e5 heidisql.exe Controls TWinControl.PaintHandler
004ee1c4 heidisql.exe Controls TWinControl.WMPaint
004f3225 heidisql.exe Controls TCustomControl.WMPaint
00634d85 heidisql.exe VirtualTrees TBaseVirtualTree.WMPaint
004e8f68 heidisql.exe Controls TControl.WndProc
004e988e heidisql.exe Controls TControl.WMMouseMove
004e8f68 heidisql.exe Controls TControl.WndProc
004ed82c heidisql.exe Controls TWinControl.WndProc
0064076c heidisql.exe VirtualTrees TBaseVirtualTree.WndProc
004ececc heidisql.exe Controls TWinControl.MainWndProc
004ab73c heidisql.exe Classes StdWndProc
77b85bdb ntdll.dll KiUserCallbackDispatcher
004ecef8 heidisql.exe Controls TWinControl.MainWndProc
77b85d76 ntdll.dll RtlRaiseStatus
77b85c02 ntdll.dll KiUserExceptionDispatcher
007e53f2 heidisql.exe Main 7161 +7 TMainForm.AnyGridGetText
0064b870 heidisql.exe VirtualTrees TCustomVirtualStringTree.DoGetText
0064abe8 heidisql.exe VirtualTrees TCustomVirtualStringTree.GetText
0064b9db heidisql.exe VirtualTrees TCustomVirtualStringTree.DoPaintNode
0064690e heidisql.exe VirtualTrees TBaseVirtualTree.PaintTree
0063de91 heidisql.exe VirtualTrees TBaseVirtualTree.Paint
004f328b heidisql.exe Controls TCustomControl.PaintWindow
004ed9e5 heidisql.exe Controls TWinControl.PaintHandler
004ee1c4 heidisql.exe Controls TWinControl.WMPaint
004f3225 heidisql.exe Controls TCustomControl.WMPaint
00634d85 heidisql.exe VirtualTrees TBaseVirtualTree.WMPaint
004e8f68 heidisql.exe Controls TControl.WndProc
004e988e heidisql.exe Controls TControl.WMMouseMove
004e8f68 heidisql.exe Controls TControl.WndProc
004ed82c heidisql.exe Controls TWinControl.WndProc
0064076c heidisql.exe VirtualTrees TBaseVirtualTree.WndProc
004ececc heidisql.exe Controls TWinControl.MainWndProc
004ab73c heidisql.exe Classes StdWndProc
77b85bdb ntdll.dll KiUserCallbackDispatcher
77ced0e7 kernel32.dll BaseThreadInitThunk

Please login to leave a reply, or register at first.