Full Unicode/Ansi-Support in /testing branch

The alpha/beta tester's forum for ZeosLib 7.0.x series

Report problems concerning our Delphi 2009+ version and new Zeoslib 7.0 features here.

This is a forum that will be removed once the 7.X version goes into stable!!

Moderators: gto, EgonHugeist, olehs

Locked
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

It seems that any of the recent amendments to the PostgreSQL is bad.

In:
select table_name, TABLE_TYPE from information_schema.tables order by 2;

truncates the name (up to two characters x?)
D2006, PG 9.2.

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

confirmed. That happens if the InternalResultset uses ftString and the CahedResultSet ftWideString. So there is fieltype checking missing/incompatible on one of both resultsets.. Will have look.

Btw. Today i've commited a Memory-Optimation patch for all PlainDrivers. We use now only 1/3 of the Memory for FireBird and MySQL. For PostgresSQL, ASA, SQLite if corected the too small FieldBuffers if you work with MBCS and not UTF8AsWideField..
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

issue fixed. It was my fault simply exchanged an 'or' with an 'add' so the default minimum size os 255 was broken and FieldSize was 0. Couldn't see this with our test becuse i temporarly removed the stored-proc tests for the Mem-Optimation.

Patch done 1876
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

R1876
In Delphi 2006/2007/XE2 is well,
but Lazarus 1.1 Win / Lin appeared error:

ZDbcResultSet.pas(2935,28 ) Error: Call by var for arg no. 1 has to match exactly: Got "RawByteString" expected "WideString"

Code: Select all

function TZAbstractBlob.GetString: ZAnsiString;
begin
  if (FBlobSize > 0) and Assigned(FBlobData) then
  begin
    System.SetString(Result, PAnsiChar(FBlobData), FBlobSize);  //<----- error
  end
  else
    Result := '';
end;
Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

Added a workaround: R1880. It should work now. Can you verify it again, please? Have only FPC 2.6.0 actually...

Wondering that a AnsiString(CP_ACP) is accepted but a Raw encoded AnsiString($ffff) not? New bug for the FPC-Core?
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

R1879 work
R1880 is not
Here, a collection of bugs:

Code: Select all

Free Pascal Compiler version 2.7.1 [2012/08/09] for x86_64
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling pl_zeosdbocomp.pas
Compiling ./source/component/ZComponentReg.pas
Compiling ./source/component/ZPropertyEditor.pas
Compiling ./source/component/ZGroupedConnection.pas
Compiling ./source/component/ZAbstractConnection.pas
Compiling ./source/dbc/ZDbcDbLib.pas
Compiling ./source/dbc/ZDbcDbLibStatement.pas
Compiling ./source/dbc/ZDbcStatement.pas
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(124,133) Error: Illegal symbol for property access
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(71,25) Error: No matching implementation for interface method "procedure ExecuteQuery(const AnsiString):IZResultSet;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(71,25) Error: No matching implementation for interface method "procedure ExecuteUpdate(const AnsiString):LongInt;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(71,25) Error: No matching implementation for interface method "procedure Execute(const AnsiString):Boolean;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(190,33) Error: No matching implementation for interface method "procedure ExecuteQuery(const AnsiString):IZResultSet;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(190,33) Error: No matching implementation for interface method "procedure ExecuteUpdate(const AnsiString):LongInt;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(190,33) Error: No matching implementation for interface method "procedure Execute(const AnsiString):Boolean;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(265,33) Error: No matching implementation for interface method "procedure ExecuteQuery(const AnsiString):IZResultSet;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(265,33) Error: No matching implementation for interface method "procedure ExecuteUpdate(const AnsiString):LongInt;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(265,33) Error: No matching implementation for interface method "procedure Execute(const AnsiString):Boolean;" found
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(335,14) Error: There is no method in an ancestor class to be overridden: "procedure ExecuteQuery(const AnsiString):IZResultSet;"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(336,14) Error: There is no method in an ancestor class to be overridden: "procedure ExecuteUpdate(const AnsiString):LongInt;"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(337,14) Error: There is no method in an ancestor class to be overridden: "procedure Execute(const AnsiString):Boolean;"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(365,14) Error: There is no method in an ancestor class to be overridden: "procedure ExecuteQuery(const AnsiString):IZResultSet;"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(366,14) Error: There is no method in an ancestor class to be overridden: "procedure ExecuteUpdate(const AnsiString):LongInt;"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(367,14) Error: There is no method in an ancestor class to be overridden: "procedure Execute(const AnsiString):Boolean;"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/dbc/ZDbcStatement.pas(374,1) Fatal: There were 16 errors compiling module, stopping
Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

Ok I'll download the Compiler the next days. Broke with RawByteString support for FPC. Anyway UTF8Encode returns now a RawByteString to so we should use him instead of AnsiString..

Patch done R1881.
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Zeos7_branches_ testing_r1881
http://svn.code.sf.net/p/zeoslib/code-0 ... s/testing/
compiles and runs on (I have tested):

- D2006,
- D2007 -> C++,
- DXE2 32/64 -> C++32,
- Lazarus Win 1.1/fpc 2.7.1 32/64,
- Lazarus Lin 1.1/fpc 2.7.1 64 on Debian 64-bit (LMDE 201204).

(Firebird 2.5.3, MySQL 5.5.18, Oracle 11g EE, PostgreSQL 9.2.0, MSSQL 2008 R2 Express)

Michal
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Zeos7_branches_ testing_r1892:

http://svn.code.sf.net/p/zeoslib/code-0 ... s/testing/

compiles and runs on (I have tested):

- D2006,
- D2007 -> C++,
- DXE2 32/64 -> C++32,
- Lazarus Win 1.1/fpc 2.7.1 32/64,
- Lazarus Lin 1.1/fpc 2.7.1 64 on Debian 64-bit (LMDE 201204).

(Firebird 2.5.3, MySQL 5.5.18, Oracle 11g EE, PostgreSQL 9.2.0, MSSQL 2008 R2 Express)

Stored Procedure work.

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,
Stored Procedure work.
partialy for Oracle, Michal. Actually you can't execute TZStoredProc.Open and i've trouble with functions who have Out/InOut Parameters. Got a script ready which works equal to MySQL but i've no idea how to fetch the declared variables. )):
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Zeos7.0.1-beta branches_ testing_r1900:

http://svn.code.sf.net/p/zeoslib/code-0 ... s/testing/

compiles and runs on (I have tested):

- D2006,
- D2007 -> C++,
- DXE2 32/64 -> C++32,
- Lazarus Win 1.1/fpc 2.7.1 32/64,
- Lazarus Lin 1.1/fpc 2.7.1 64 on Debian 64-bit (LMDE 201204).

(Firebird 2.5.3, MySQL 5.5.18, Oracle 11g EE, PostgreSQL 9.2.0, MSSQL 2008 R2 Express)

[s]A little weak is the recognition procedure parameters in MSSQL and Oracle. Often, they are not seen at all.[/s]

In version r1902 procedure parameters identification have improved significantly :)

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

thanks, Michal. TZStoredProc.Open works now too for Oracle.

btw: http://sourceforge.net/projects/zeoslib ... 20Objects/

Do you see the Zeos 7.0.1-Beta?! (((((((((: This is the 1879Rev.
Last edited by EgonHugeist on 05.10.2012, 11:13, edited 1 time in total.
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Yes I have seen but for me r1902 is an important amendment.
It was nice to be able to recognize Oracle ROWID type in stored procedures.

Michal
User avatar
EgonHugeist
Zeos Project Manager
Zeos Project Manager
Posts: 1936
Joined: 31.03.2011, 22:38

Post by EgonHugeist »

miab3,

Well i'm sure there is a lot of more to do with the TZStoreProc stuff for oracle. What we actually have is a good base to go forward. Ther oracle packages i've currently not testet and pipelined data, REF_CURSOURS too.

Here we need several upgrades. Everything step by step.
Best regards, Michael

You want to help? http://zeoslib.sourceforge.net/viewtopic.php?f=4&t=3671
You found a (possible) bug? Use the new bugtracker dude! http://sourceforge.net/p/zeoslib/tickets/

Image
miab3
Zeos Test Team
Zeos Test Team
Posts: 1310
Joined: 11.05.2012, 12:32
Location: Poland

Post by miab3 »

EgonHugeist,

Now I noticed.
Happy birthday Michael and thanks for the great work!

Michal Abramczyk
Locked