Page 1 of 2

MyDAC 5.20.0.13 Embedded don't work with libmysqld.dll version 4 and 5 with innodb Tables

Posted: Fri 11 Jan 2008 21:01
by eduardosic
Hi, i try to test mydac 5.20.0.13 Embedded with libmysqld.dll version
4 and 5 but with a innodb tables don't work..

i made a small project to demonstrate the two bug's.

http://www.drdsistemas.com/util/mydac/b ... ed_BUG.zip


see, images

Bug with Lib 4.1.12
Image

Bug with Lib 5.1.22rc
Image

MyDAC Version 5.20.0.13
Delphi 2007 with December 2007 Update.
MySQL Embedded Dll Versions 4.1.12a and 5.1.22rc

Please.. Fix it.. Embedded support is a VERY important Feature.

Posted: Mon 14 Jan 2008 12:20
by rsandies
I am also having problems with 5.20.0.13 on embedded MYISAM tables. Connection problems, AVs, Memory leaks, etc. Everything works again after reverting to 0.12.

Tried a simple project with just a MyEmbConnection, query, ds, and grid.
Behavior the same.

Delphi 2007 on either XP and Vista.

?????

Posted: Tue 15 Jan 2008 15:40
by eduardosic
CoreLab Team ???

Antaeus ???

Dimon ???

Posted: Wed 16 Jan 2008 12:48
by Dimon
We have reproduced problems with MyEmbConnection and fixed them. These fixes will be included in the next MyDAC build.

...

Posted: Wed 16 Jan 2008 12:56
by eduardosic
Dimon wrote:We have reproduced problems with MyEmbConnection and fixed them. These fixes will be included in the next MyDAC build.
Hi Dimon,

When the next Build will be released? in two months?

it is much time to wait. they make one release special to correct this problem.

Posted: Thu 17 Jan 2008 10:04
by Dimon
In order to get the fix to this problem, please send us your registration information by e-mail at dmitryg*crlab*com.

...

Posted: Thu 17 Jan 2008 10:30
by eduardosic
Dimon wrote:In order to get the fix to this problem, please send us your registration information by e-mail at dmitryg*crlab*com.
Ok, i send..

i use a MyDAC professional..

Re: ...

Posted: Tue 22 Jan 2008 16:42
by eduardosic
eduardosic wrote:
Dimon wrote:In order to get the fix to this problem, please send us your registration information by e-mail at dmitryg*crlab*com.
Ok, i send..

i use a MyDAC professional..
Hi Dmitry

i install the fix.

The fix work's with libmysqld.dll version 4, but after closing a connection the ibdata file continues in use, it is only closed after leaving software.

with libmysqld.dll version 5 the fix don't work, it presents the same problem.

you can download my test project and test it

http://www.drdsistemas.com/util/mydac/b ... ed_BUG.zip

the dll version 4 and 5 are included.

Help-me

and

King Regard's

Same problem with MySQL lib 4.1 and MyDAC 5.20

Posted: Thu 24 Jan 2008 08:55
Hi,

I also have the same issue after upgrading from MyDAC 4 to myDAC 5.20

error:
A call an mysql_server_init failed
Access violation at address 04DB0908 in modue libmysqld.dll. Read of address 00000000.

worked fine until upgrade of MyDAC to v5.20.0.13

Still using MySQL Embedded Dll Versions 4.1.12
BCB 6

any assistance on a fix for this would be appreciated.

thanks

Re: ...

Posted: Fri 25 Jan 2008 09:19
by Dimon
eduardosic wrote:The fix work's with libmysqld.dll version 4, but after closing a connection the ibdata file continues in use, it is only closed after leaving software.
MyDAC does not unload Embedded server every time after closing a connection because this is a very slow operation.
If you really need to release database files during your application is working, you should add the MySqlApi unit to the uses clause and execute this code:

Code: Select all

  MyAPIEmbedded.FreeMySQLLib;

Unable to get embedded working with any version

Posted: Fri 25 Jan 2008 15:20
Hi,

I have been sent a fix which still doesn't work and have tried various combinations with the new MyDAC 5.20 and different versions of libmysqld.dll and still no joy. The main issue is that use a TMYConnection setup as embeded and a my.ini file everything was working but I wanted to use the TCRBAtchMove so need to upgrade to MyDAC 5.20. now neither the TMYConnection as embedded works or a new TMyEmbConnection. If anyone actually has this working with any version of libmysqld.dll and MyDAC v 5.20 i would be extremely grateful for information on parameters, directory / folder setups and locations and any .ini files etc that I could try and hopefully get Embedded MySQL working again.

many thanks in advance

C++ Builder 6
MySQL 4 & 5
MyDAC 5.20

Re: Unable to get embedded working with any version

Posted: Sat 26 Jan 2008 05:16
by eduardosic
[email protected] wrote:Hi,

I have been sent a fix which still doesn't work and have tried various combinations with the new MyDAC 5.20 and different versions of libmysqld.dll and still no joy. The main issue is that use a TMYConnection setup as embeded and a my.ini file everything was working but I wanted to use the TCRBAtchMove so need to upgrade to MyDAC 5.20. now neither the TMYConnection as embedded works or a new TMyEmbConnection. If anyone actually has this working with any version of libmysqld.dll and MyDAC v 5.20 i would be extremely grateful for information on parameters, directory / folder setups and locations and any .ini files etc that I could try and hopefully get Embedded MySQL working again.

many thanks in advance

C++ Builder 6
MySQL 4 & 5
MyDAC 5.20
Hi [email protected]

Dimon fix this problem, These fixes will be included in the next MyDAC build.

gives attention to use the libmysqld.dll Version 4 and corresponding the Share folder to this version, equally for version 5.1 of mysql

you can download a small sample of embedded Database

http://www.drdsistemas.com/util/mydac/emb.zip

MyDAC 5.20.0.13 Embedded don't work with innodb Tables

Posted: Mon 04 Feb 2008 23:42
by bprasetio
I am have also having problem accessing innodb tables with MyDAC 5.20.0.13, it seems the library did not find the innodb tables, even with new patch created / sent by Dimon / Dmitry Gerasimenko. The patch itself works well with MyISAM tables.

Dmitry said I have to include parameter --innodb in the TMyEmbConnection.Params, as he suggested, I've added it. But it did not work well in my code. It still did not find the innodb tables.

So here my code in case you want to look at, maybe I missed something.

the pas file

Code: Select all

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, DB, MemDS, DBAccess, MyAccess, MyEmbConnection,
  StdCtrls;

type
  TForm1 = class(TForm)
    MyEmbConnection1: TMyEmbConnection;
    MyQuery1: TMyQuery;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Edit1: TEdit;
    Button1: TButton;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);
begin
  MyQuery1.Close;
  MyEmbConnection1.Close;

  MyEmbConnection1.BaseDir := ExtractFilePath(Application.ExeName);
  MyEmbConnection1.DataDir := MyEmbConnection1.BaseDir + 'Data';
  MyEmbConnection1.Database := Edit1.Text;
  MyEmbConnection1.Open;
  MyQuery1.SQL.LoadFromFile('sql.sql');
  MyQuery1.Open;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  MyQuery1.Close;
  MyEmbConnection1.Close;
end;

end.
the dfm

Code: Select all

object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 290
  ClientWidth = 465
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  OnClose = FormClose
  DesignSize = (
    465
    290)
  PixelsPerInch = 96
  TextHeight = 13
  object DBGrid1: TDBGrid
    Left = 8
    Top = 32
    Width = 449
    Height = 250
    Anchors = [akLeft, akTop, akRight, akBottom]
    DataSource = DataSource1
    TabOrder = 0
    TitleFont.Charset = DEFAULT_CHARSET
    TitleFont.Color = clWindowText
    TitleFont.Height = -11
    TitleFont.Name = 'Tahoma'
    TitleFont.Style = []
  end
  object Edit1: TEdit
    Left = 8
    Top = 5
    Width = 121
    Height = 21
    TabOrder = 1
    Text = 'Edit1'
  end
  object Button1: TButton
    Left = 135
    Top = 1
    Width = 90
    Height = 25
    Caption = 'Button1'
    TabOrder = 2
    OnClick = Button1Click
  end
  object MyEmbConnection1: TMyEmbConnection
    Database = 'mysql'
    Params.Strings = (
      '--datadir=data'
      '--innodb')
    Username = 'root'
    Password = ''
    LoginPrompt = False
    Left = 24
    Top = 16
  end
  object MyQuery1: TMyQuery
    Connection = MyEmbConnection1
    Left = 64
    Top = 16
  end
  object DataSource1: TDataSource
    DataSet = MyQuery1
    Left = 104
    Top = 16
  end
end
Thanks in advance.

Re: MyDAC 5.20.0.13 Embedded don't work with innodb Tables

Posted: Tue 05 Feb 2008 00:34
by eduardosic
"bprasetio"

Dmitry made two patches. it's work fine for me.

Posted: Tue 05 Feb 2008 04:06
by bprasetio
@eduardosic:
just to ensure, does my --innodb parameter declared in the right place correctly?


btw, I don't know which patches I've received. I've emailed Dmitry many times last night (my timezone) but the mailer daemon reported that the address can not be reached.