Issue #2398: Make "Get full table status" a session setting (was global before), so users can switch that off in specific sessions only.

This commit is contained in:
Ansgar Becker
2013-12-02 05:45:47 +00:00
parent 0d3f65f68b
commit fe6b38c7c1
7 changed files with 46 additions and 38 deletions

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: HeidiSQL\n"
"POT-Creation-Date: 2012-11-05 21:40\n"
"PO-Revision-Date: 2013-11-27 06:53+0100\n"
"PO-Revision-Date: 2013-12-02 06:39+0100\n"
"Last-Translator: Ansgar Becker <heidisql@anse.de>\n"
"Language-Team: English (http://www.transifex.com/projects/p/heidisql/"
"language/en/)\n"
@ -348,6 +348,16 @@ msgstr ""
msgid "Set client time zone"
msgstr "Set client time zone"
# Session > Advanced
msgid "Get full table status"
msgstr "Get full table status"
# Session > Advanced
msgid ""
"Disable to speed up internal queries on databases with many InnoDB tables"
msgstr ""
"Disable to speed up internal queries on databases with many InnoDB tables"
#. connform..PageControlDetails..tabSSHtunnel..lblSSHLocalPort..Caption
#: connections.dfm:424
msgid "Local port:"
@ -2577,14 +2587,6 @@ msgstr ""
"ping heidisql.com at most once every month. This is used to count the used "
"HeidiSQL and MySQL versions."
# Options > Miscellaneous
msgid ""
"Get full table status (disable to speed up on databases with many InnoDB "
"tables)"
msgstr ""
"Get full table status (disable to speed up on databases with many InnoDB "
"tables)"
#. optionsform..pagecontrolMain..tabMisc..chkAllowMultiInstances..Caption
#: options.dfm:141
msgid "Allow multiple application instances"

View File

@ -647,7 +647,7 @@ object connform: Tconnform
end
object chkLocalTimeZone: TCheckBox
Left = 120
Top = 130
Top = 180
Width = 172
Height = 17
Hint =
@ -655,7 +655,7 @@ object connform: Tconnform
', for MySQL 4.1.3+'
Anchors = [akLeft, akTop, akRight]
Caption = 'Set client time zone'
TabOrder = 4
TabOrder = 5
OnClick = Modification
end
object editStartupScript: TButtonedEdit
@ -667,11 +667,24 @@ object connform: Tconnform
Images = MainForm.ImageListMain
RightButton.ImageIndex = 51
RightButton.Visible = True
TabOrder = 5
TabOrder = 4
OnChange = Modification
OnDblClick = PickFile
OnRightButtonClick = PickFile
end
object chkFullTableStatus: TCheckBox
Left = 120
Top = 203
Width = 172
Height = 17
Hint =
'Disable to speed up internal queries on databases with many Inno' +
'DB tables'
Anchors = [akLeft, akTop, akRight]
Caption = 'Get full table status'
TabOrder = 6
OnClick = Modification
end
end
object tabStatistics: TTabSheet
Caption = 'Statistics'

View File

@ -92,6 +92,7 @@ type
chkLocalTimeZone: TCheckBox;
editStartupScript: TButtonedEdit;
lblStartupScript: TLabel;
chkFullTableStatus: TCheckBox;
procedure FormCreate(Sender: TObject);
procedure btnOpenClick(Sender: TObject);
procedure FormShow(Sender: TObject);
@ -313,6 +314,7 @@ begin
Sess.NetType := TNetType(comboNetType.ItemIndex);
Sess.Compressed := chkCompressed.Checked;
Sess.LocalTimeZone := chkLocalTimeZone.Checked;
Sess.FullTableStatus := chkFullTableStatus.Checked;
Sess.AllDatabasesStr := comboDatabases.Text;
Sess.StartupScriptFilename := editStartupScript.Text;
Sess.SSHPlinkExe := editSSHPlinkExe.Text;
@ -510,6 +512,7 @@ begin
Result.StartupScriptFilename := editStartupScript.Text;
Result.Compressed := chkCompressed.Checked;
Result.LocalTimeZone := chkLocalTimeZone.Checked;
Result.FullTableStatus := chkFullTableStatus.Checked;
end;
end;
@ -746,6 +749,7 @@ begin
updownPort.Position := Sess.Port;
chkCompressed.Checked := Sess.Compressed;
chkLocalTimeZone.Checked := Sess.LocalTimeZone;
chkFullTableStatus.Checked := Sess.FullTableStatus;
comboDatabases.Text := Sess.AllDatabasesStr;
editStartupScript.Text := Sess.StartupScriptFilename;
editSSHPlinkExe.Text := Sess.SSHPlinkExe;
@ -948,6 +952,7 @@ begin
or (Sess.Port <> updownPort.Position)
or (Sess.Compressed <> chkCompressed.Checked)
or (Sess.LocalTimeZone <> chkLocalTimeZone.Checked)
or (Sess.FullTableStatus <> chkFullTableStatus.Checked)
or (Sess.NetType <> TNetType(comboNetType.ItemIndex))
or (Sess.StartupScriptFilename <> editStartupScript.Text)
or (Sess.AllDatabasesStr <> comboDatabases.Text)

View File

@ -176,7 +176,7 @@ type
FSessionPath, FSSLPrivateKey, FSSLCertificate, FSSLCACertificate, FServerVersion,
FSSHHost, FSSHUser, FSSHPassword, FSSHPlinkExe, FSSHPrivateKey: String;
FPort, FSSHPort, FSSHLocalPort, FSSHTimeout, FCounter: Integer;
FLoginPrompt, FCompressed, FLocalTimeZone, FWindowsAuth, FWantSSL, FIsFolder: Boolean;
FLoginPrompt, FCompressed, FLocalTimeZone, FFullTableStatus, FWindowsAuth, FWantSSL, FIsFolder: Boolean;
FSessionColor: TColor;
FLastConnect: TDateTime;
function GetImageIndex: Integer;
@ -215,6 +215,7 @@ type
property StartupScriptFilename: String read FStartupScriptFilename write FStartupScriptFilename;
property Compressed: Boolean read FCompressed write FCompressed;
property LocalTimeZone: Boolean read FLocalTimeZone write FLocalTimeZone;
property FullTableStatus: Boolean read FFullTableStatus write FFullTableStatus;
property SSHHost: String read FSSHHost write FSSHHost;
property SSHPort: Integer read FSSHPort write FSSHPort;
property SSHUser: String read FSSHUser write FSSHUser;
@ -705,6 +706,7 @@ begin
FStartupScriptFilename := AppSettings.ReadString(asStartupScriptFilename);
FCompressed := AppSettings.ReadBool(asCompressed);
FLocalTimeZone := AppSettings.ReadBool(asLocalTimeZone);
FFullTableStatus := AppSettings.ReadBool(asFullTableStatus);
FServerVersion := AppSettings.ReadString(asServerVersionFull);
DummyDate := 0;
FLastConnect := StrToDateTimeDef(AppSettings.ReadString(asLastConnect), DummyDate);
@ -736,6 +738,7 @@ begin
AppSettings.WriteInt(asNetType, Integer(FNetType));
AppSettings.WriteBool(asCompressed, FCompressed);
AppSettings.WriteBool(asLocalTimeZone, FLocalTimeZone);
AppSettings.WriteBool(asFullTableStatus, FFullTableStatus);
AppSettings.WriteString(asDatabases, FAllDatabases);
AppSettings.WriteString(asStartupScriptFilename, FStartupScriptFilename);
AppSettings.WriteString(asSSHtunnelHost, FSSHHost);
@ -2977,7 +2980,7 @@ begin
// Tables and views
Results := nil;
try
AppSettings.ResetPath;
AppSettings.SessionPath := Parameters.SessionPath;
if AppSettings.ReadBool(asFullTableStatus) or (UpperCase(db) = 'INFORMATION_SCHEMA') then begin
Results := GetResults('SHOW TABLE STATUS FROM '+QuoteIdent(db));
end else begin

View File

@ -3280,7 +3280,7 @@ begin
InitSetting(asDonatedEmail, 'DonatedEmail', 0, False, '');
InitSetting(asFavoriteObjects, 'FavoriteObjects', 0, False, '', True);
InitSetting(asFavoriteObjectsOnly, 'FavoriteObjectsOnly', 0, False);
InitSetting(asFullTableStatus, 'FullTableStatus', 0, True);
InitSetting(asFullTableStatus, 'FullTableStatus', 0, True, '', True);
end;

View File

@ -37,21 +37,21 @@ object optionsform: Toptionsform
353)
object lblMySQLBinaries: TLabel
Left = 8
Top = 235
Top = 219
Width = 152
Height = 13
Caption = 'MySQL command line programs:'
end
object lblLanguage: TLabel
Left = 8
Top = 289
Top = 273
Width = 189
Height = 13
Caption = 'Application language (requires restart):'
end
object lblCustomSnippetsDirectory: TLabel
Left = 8
Top = 262
Top = 246
Width = 129
Height = 13
Caption = 'Custom snippets directory:'
@ -153,7 +153,7 @@ object optionsform: Toptionsform
end
object chkColorBars: TCheckBox
Left = 8
Top = 206
Top = 190
Width = 310
Height = 17
Caption = 'Display bars in various list columns'
@ -162,7 +162,7 @@ object optionsform: Toptionsform
end
object cboxColorBars: TColorBox
Left = 272
Top = 204
Top = 188
Width = 319
Height = 22
Style = [cbStandardColors, cbExtendedColors, cbCustomColor, cbPrettyNames, cbCustomColors]
@ -172,7 +172,7 @@ object optionsform: Toptionsform
end
object editMySQLBinaries: TButtonedEdit
Left = 272
Top = 232
Top = 216
Width = 319
Height = 21
Anchors = [akLeft, akTop, akRight]
@ -188,7 +188,7 @@ object optionsform: Toptionsform
end
object comboAppLanguage: TComboBox
Left = 272
Top = 286
Top = 270
Width = 319
Height = 21
Style = csDropDownList
@ -198,7 +198,7 @@ object optionsform: Toptionsform
end
object editCustomSnippetsDirectory: TButtonedEdit
Left = 272
Top = 259
Top = 243
Width = 319
Height = 21
Anchors = [akLeft, akTop, akRight]
@ -212,18 +212,6 @@ object optionsform: Toptionsform
OnDblClick = editCustomSnippetsDirectoryRightButtonClick
OnRightButtonClick = editCustomSnippetsDirectoryRightButtonClick
end
object chkFullTableStatus: TCheckBox
Left = 8
Top = 178
Width = 583
Height = 17
Anchors = [akLeft, akTop, akRight]
Caption =
'Get full table status (disable to speed up on databases with man' +
'y InnoDB tables)'
TabOrder = 13
OnClick = Modified
end
end
object tabLogging: TTabSheet
Caption = 'Logging'

View File

@ -127,7 +127,6 @@ type
SynMemoSQLSample: TSynMemo;
editCustomSnippetsDirectory: TButtonedEdit;
lblCustomSnippetsDirectory: TLabel;
chkFullTableStatus: TCheckBox;
procedure FormShow(Sender: TObject);
procedure Modified(Sender: TObject);
procedure Apply(Sender: TObject);
@ -257,7 +256,6 @@ begin
AppSettings.WriteBool(asUpdatecheckBuilds, chkUpdatecheckBuilds.Checked);
AppSettings.WriteInt(asUpdatecheckInterval, updownUpdatecheckInterval.Position);
AppSettings.WriteBool(asDoUsageStatistics, chkDoStatistics.Checked);
AppSettings.WriteBool(asFullTableStatus, chkFullTableStatus.Checked);
AppSettings.WriteBool(asDisplayBars, chkColorBars.Checked);
AppSettings.WriteInt(asBarColor, cboxColorBars.Selected);
AppSettings.WriteString(asMySQLBinaries, editMySQLBinaries.Text);
@ -435,7 +433,6 @@ begin
updownUpdatecheckInterval.Position := AppSettings.ReadInt(asUpdatecheckInterval);
chkUpdatecheckClick(Sender);
chkDoStatistics.Checked := AppSettings.ReadBool(asDoUsageStatistics);
chkFullTableStatus.Checked := AppSettings.ReadBool(asFullTableStatus);
chkColorBars.Checked := AppSettings.ReadBool(asDisplayBars);
cboxColorBars.Selected := AppSettings.ReadInt(asBarColor);
editMySQLBinaries.Text := AppSettings.ReadString(asMySQLBinaries);