Page 43 of 44

Posted: 22.11.2012, 02:05
by EgonHugeist
miab3,

i think so: http://zeos.firmos.at/viewtopic.php?p=16574#16574

did you read this article? Main speed increase is the transaktion behavior. But on my little benchmark the CAPI based one was 2 sec. faster with 100.000 inserts than the current emultated one (thinking about dropping it). Another tip: each prepare take time. So i propose you use the same TZQuery for looping selects or updates. Use another query for permanantly changing statements.

Michal, i made a define simplification for FPC. Can you check it on debian?

Posted: 22.11.2012, 11:29
by miab3
EgonHugeist,

Zeos7.1-beta branches_ testing_R2024:
http://svn.code.sf.net/p/zeoslib/code-0 ... sting-7.1/

It compiles and runs in the D2006, D2007, DXE2 32/64/C + +, Lazarus 2.7.1 for Windows 32/64.

For D2007-C++ I get an error when compiling application:

Code: Select all

[BCC32 Error] Zplainsqlitedriver.hpp(68): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(68): E2257 , expected
[BCC32 Error] Zplainsqlitedriver.hpp(70): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(70): E2257 , expected
[BCC32 Error] Zplainsqlitedriver.hpp(334): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(334): E2293 ) expected
[BCC32 Error] Zplainsqlitedriver.hpp(335): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(335): E2293 ) expected
[BCC32 Error] Zplainsqlitedriver.hpp(424): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(424): E2293 ) expected
[BCC32 Error] Zplainsqlitedriver.hpp(425): E2316 'PPWideChar' is not a member of 'System'
[BCC32 Error] Zplainsqlitedriver.hpp(425): E2293 ) expected
In DXE2-C++ does not have that error.

Lazaurus 2.7.1 for Linux 64 can not build a package.
But I can not determine why.
Maybe someone else with Linux to succeed explain.

Michal

Posted: 22.11.2012, 13:36
by EgonHugeist
miab3,

Ulf that's something i didn't expect. I've currenty no Laptop here.

AFAIK there is no define to check Delphi/CBuilder.

Is it possible to check in ZCompatibility.pas:

{If not defined (PPWideChar)}
PPWideChar = ^PWideChar;
{$endif}

This could handle this issue. But this also means this type has to be defined and decared before..

Btw. What do you think about this rowaccessor design?

Posted: 23.11.2012, 14:26
by miab3
EgonHugeist,

R2025 patch does not work for me (in D2007 C++).
I added the line 93:  
PPWideChar = ^PWideChar; // M.A.
and operates.

I still can not find the cause for which Lazarus for Linux does not build the library.

For other compilers is fine.

Michal

Posted: 23.11.2012, 15:27
by EgonHugeist
miab3,

Well the PPWideChar issue can be solved if we daclare a ZPPWidechar = ^PWidechar. I'll do this tonight.

Which problems do you have on Linux? A failure List?

Posted: 24.11.2012, 00:55
by miab3
EgonHugeist,

Zeos7.1-beta branches_ testing_R2029:
http://svn.code.sf.net/p/zeoslib/code-0 ... sting-7.1/
File ZPlainOracleConstants.pas line 796 should be:

Code: Select all

 pin_option:ub2;pin_duration:OCIDuration;lock_option:pub2;_object:pointer):sword;cdecl;
Michal

Posted: 24.11.2012, 01:05
by EgonHugeist
miab3,

huge surprice. I have exacly this code on my local working copy. R2031

What about BCB and Linux?

Posted: 24.11.2012, 01:20
by miab3
EgonHugeist,

Oracle table AQ$_QUEUES opens in DXE2. :lol:

C++ 2007 and XE2 compiled.

Currently I do not have the possibility to register bugs in Lazarus Linux.

Michal

Posted: 24.11.2012, 07:09
by Zoran
Kubuntu 12.10, Lazarus 1.1 svn rev. 39358, fpc 2.6.0, Zeos testing-7.1, rev. 2031:
/zeos/testing-7.1/src/core/ZEncoding.pas(707,31) Error: Identifier not found "WideToAnsi"
/zeos/testing-7.1/src/core/ZEncoding.pas(707,42) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(712,42) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(838,33) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(887,29) Error: Identifier not found "AnsiToWide"
/zeos/testing-7.1/src/core/ZEncoding.pas(902) Fatal: There were 5 errors compiling module, stopping
Same error with zeos\testing (not 7.1) branch.
The error does not appear with zeos\trunk.

Posted: 24.11.2012, 11:10
by EgonHugeist
miab3,

yes i know it opens, but currently the NestedDataSets are not supported (i'm working on it for 7.1)

Zoran,

which compiler do you use? FPCC2.6?
Edit: I hope i got it. You're right. Since the LConvEncoding define was binded to the LCL define... R2033

Posted: 24.11.2012, 12:58
by miab3
EgonHugeist,

ZEOS 7.1_R2034 installed in Lazarus in Linux Debian64 but when compiling the application gets errors

Code: Select all

/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(460,49) Error: Identifier not found "AnsiToStringEx"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(575,31) Error: Incompatible types: got "procedure UTF8Encode(const RawByteString):AnsiString;" expected "RawByteString"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(670,43) Error: Identifier not found "StringToAnsiEx"
/usr/lib/codetyphon/lazarus/components/pl_ZeosDBO/source/core/ZCompatibility.pas(1003) Fatal: There were 3 errors compiling module, stopping
Lazarus:
http://www.pilotlogic.com/sitejoom/inde ... n-download
http://www.pilotlogic.com/codetyphon/changeslog.txt

Michal

Posted: 24.11.2012, 14:15
by EgonHugeist
miab3,

currently i've only a UMTS connection (not at home or work).

I found and fixed again a leak (second error).

But why now the function AnsiToStrEx and vice versa can't be found, i do not anderstand. These are not available if WITH_LCONVENCODING is defined. But this define should normaly be undefined if: Lazarus.inc

{$IF defined(WITH_LCONVENCODING) and (defined(MSWINDOWS) or defined(FPC_HAS_BUILTIN_WIDESTR_MANAGER))}
{$UNDEF WITH_LCONVENCODING}
{$IFEND}

can you check it please?

Zoran,

can you please check it with your FPC too?


I'll download a Lazarus for Linux this evenig (have Suse installed on a virtual box).

Posted: 24.11.2012, 15:06
by miab3
EgonHugeist,

I was wrong.
Zeos 7.1, the current version (R2036) does not install to my Linux Lazarus environment.
I had to go back to 7.1 R2020.

Michal

Posted: 24.11.2012, 22:32
by Zoran
EgonHugeist wrote:miab3,
which compiler do you use? FPCC2.6?
Yes, 2.6.0 "stable".
EgonHugeist wrote:miab3,
Zoran,

can you please check it with your FPC too?
Now (rev. 2044) testing-7.1 compiles well, but testing does not:
/zeos/testing/src/core/ZCompatibility.pas(464,45) Error: Identifier not found "AnsiToStringEx"
/zeos/testing/src/core/ZCompatibility.pas(665,39) Error: Identifier not found "StringToAnsiEx"
/zeos/testing/src/core/ZCompatibility.pas(993) Fatal: There were 2 errors compiling module, stopping
And now even zeos/trunk does not compile. There is now the error which used to be in testing-7.1 (fixed there but backported ;) ):
/zeos/trunk/src/core/ZEncoding.pas(707,31) Error: Identifier not found "WideToAnsi"
/zeos/trunk/src/core/ZEncoding.pas(707,42) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(712,42) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(838,33) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(887,29) Error: Identifier not found "AnsiToWide"
/zeos/trunk/src/core/ZEncoding.pas(902) Fatal: There were 5 errors compiling module, stopping

Posted: 24.11.2012, 22:37
by EgonHugeist
Zoran,

i don't know why the project-manager did switch back to 2012 ): on testing & trunk

Because of this i currently didn't merge the fixes to \testing.

I've tested 2044 on Linux32Bit + FPC2.6.0.

Remaining is now a Linux FPC2.7.1. Must i really download Debian, like Michal proposes? Or is there a FPC2.7.1 + Lazarus available for Linux too? I didn't find a compiled package )):