Thread: Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: pgsql-committers-owner@postgresql.org > [mailto:pgsql-committers-owner@postgresql.org] On Behalf Of > User H-saito > Sent: 25 August 2006 00:02 > To: pgsql-committers@postgresql.org > Subject: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of > win32 ANSI: psqlodbca Unicode: > > Log Message: > ----------- > Fixed dllname of win32 > ANSI: psqlodbca > Unicode: psqlodbc35w What is this change for Hiroshi? We deprecated the ANSI driver because the correctly functioning Unicode driver will handle ascii data just fine. We don't want it back again. Regards, Dave
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Hiroshi Saito"
Date:
> What is this change for Hiroshi? We deprecated the ANSI driver because > the correctly functioning Unicode driver will handle ascii data just > fine. We don't want it back again. Ah, The user of the Latin character-set had dissatisfaction in UNICODE. And Inoue-san considered carefully and he judged that ANSI was still required. Then, it was able to help the problem. I think It is a mission to help the user uses. Regards, Hiroshi Saito
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: Hiroshi Saito [mailto:z-saito@guitar.ocn.ne.jp] > Sent: 25 August 2006 09:17 > To: Dave Page; pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed > dllname of win32 ANSI: psqlodbca Unicode: > > > What is this change for Hiroshi? We deprecated the ANSI > driver because > > the correctly functioning Unicode driver will handle ascii data just > > fine. We don't want it back again. > > Ah, The user of the Latin character-set had dissatisfaction > in UNICODE. > And Inoue-san considered carefully and he judged that ANSI > was still required. > Then, it was able to help the problem. I think It is a > mission to help the user uses. That is a major change that wasn't discussed on the mailing lists that I'm aware of. Why is ANSI still required? No other DBMS that I'm aware of has to have 2 drivers. Why can't the actual problem be fixed? Changing back to 2 drivers again is a major pain because it means renaming all the DLLs and drivers yet again - something that has the potential to *really* annoy users. Regards, Dave.
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Hiroshi Saito"
Date:
Hi. It was easy to already have the logic and to erase. However, it can use because of the user who had some problems. I hear that and it was made to emerge. It is never major amendment. At least while the logic is valid inside, I think that an outer expression is required. I want to leave it until logic is removed. Regards, Hiroshi Saito
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
-----Original Message----- From: pgsql-odbc-owner@postgresql.org on behalf of Hiroshi Saito Sent: Sat 8/26/2006 1:18 AM To: pgsql-odbc@postgresql.org Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode: Hi. > It was easy to already have the logic and to erase. However, it can use because > of the user who had some problems. I hear that and it was made to emerge. > It is never major amendment. It's not a major code change, but it is a major change of direction for the project - one that I feel should have been discussedon the mailing list - especially as I for one have to rehack at least two installers to deal with it. > At least while the logic is valid inside, I think that > an outer expression is required. I want to leave it until logic is removed. Which means it will never be changed because the code will not be removed until *long* after any bugs are fixed - I've madethat mistake before :-( Regards, Dave.
Dave Page wrote: > > > -----Original Message----- > From: pgsql-odbc-owner@postgresql.org on behalf of Hiroshi Saito > Sent: Sat 8/26/2006 1:18 AM > To: pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode: > > Hi. > >> It was easy to already have the logic and to erase. However, it can use because >> of the user who had some problems. I hear that and it was made to emerge. >> It is never major amendment. > > It's not a major code change, but it is a major change of direction for the project - one that I feel should have beendiscussed on the mailing list - especially as I for one have to rehack at least two installers to deal with it. > >> At least while the logic is valid inside, I think that >> an outer expression is required. I want to leave it until logic is removed. > > Which means it will never be changed because the code will not be removed until *long* after any bugs are fixed - I'vemade that mistake before :-( I'm sorry if I cofused the list. I'm not sticking to the official ANSI version so much. Though I don't remember well, probably I didn't add psqlodbca.def to CVS intentionally when I added the ANSI_VERSION option to win32.mak. My hope is to leave the ANSI_VERSION option of win32.mak as it is even though it is not supported officially. Because it's very troublesome to maintain separate makefiles for other settings, I removed duplicates from win32.mak as much as possible and integrated the offical Unicode version and my local ANSI version. I've provided the ANSI version in my site for the people who are unhappy with the Unicode version though I've rarely tested it by myself and not updated it so often. Though I'm not sure if I would continue the ANSI version in the future, I hope I would be able to test the ANSI vesrion easily by myself. There's another new option MSDTC in win32.mak. Is it OK that the option is ON by default ? regards, Hiroshi Inoue
> There's another new option MSDTC in win32.mak. Is it OK that > the option is ON by default ? I think that the interface which you are drawing is great. If it is present PostgreSQL equipped with 2 phase commitment, it will support a user's possibility. Even if it is the specification of only windows.... However, I think default of NO is desirable until a developer's stability is checked. +1 vote. Regards, Hiroshi Saito
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: Hiroshi Inoue [mailto:inoue@tpf.co.jp] > Sent: 28 August 2006 02:00 > To: Dave Page > Cc: Hiroshi Saito; pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed > dllname of win32 ANSI: psqlodbca Unicode: > > I'm not sticking to the official ANSI version so much. > Though I don't remember well, probably I didn't add > psqlodbca.def to CVS intentionally when I added the > ANSI_VERSION option to win32.mak. > My hope is to leave the ANSI_VERSION option of win32.mak > as it is even though it is not supported officially. > Because it's very troublesome to maintain separate makefiles > for other settings, I removed duplicates from win32.mak > as much as possible and integrated the offical Unicode > version and my local ANSI version. > I've provided the ANSI version in my site for the people who > are unhappy with the Unicode version though I've rarely > tested it by myself and not updated it so often. Though I'm > not sure if I would continue the ANSI version in the future, > I hope I would be able to test the ANSI vesrion easily by > myself. OK. At the moment, the installer is setup to install the Unicode driver as 'PostgreSQL'. As this is something we cannot keep chopping and changing, and we're about to set things in stone for 8.2 - should I make that 'PostgreSQL Unicode'? Should we include the ANSI driver as well for now, or just ship the Unicode? Although I'd like to have only the one driver, if there are real problems with those remaining latin/BDE issues I'm happy to go with 2 - we just can't keep changing the driver name in production releases!! > There's another new option MSDTC in win32.mak. Is it OK that > the option is ON by default ? I don't see any problem with new features as long as they are stable and don't break backwards compatibility. MSDTC support sounds like a fine improvement. Regards, Dave.
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: pgsql-odbc-owner@postgresql.org > [mailto:pgsql-odbc-owner@postgresql.org] On Behalf Of Dave Page > Sent: 28 August 2006 17:22 > To: Hiroshi Inoue > Cc: Hiroshi Saito; pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed > dllname of win32 ANSI: psqlodbca Unicode: > > > MSDTC support sounds like a fine > improvement. Unfortunately it doesn't seem to build for me: cl.exe /nologo /MT /W3 /GX /O2 /I "C:\Program Files\PostgreSQL\8.1\include" /I "C:\OpenSSL\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "PSQLODBC_EXPORTS" /D "WIN_MULTITHREAD_SUPPORT" /D "SSL_DLL=\""SSLEAY32.dll"\"" /D "DYNAMIC_LOAD" /D "_HANDLE_ENLIST_IN_DTC_" /D "UNICODE_SUPPORT" /D "ODBCVER=0x0351" /Fp".\Release\psqlodbc.pch" /YX /Fo".\Release\\" /Fd".\Release\\" /FD /c msdtc_enlist.cpp msdtc_enlist.cpp msdtc_enlist.cpp(145) : error C2504: 'ITransactionResourceAsync' : base class undefined msdtc_enlist.cpp(148) : error C2143: syntax error : missing ';' before '*' msdtc_enlist.cpp(148) : error C2501: 'IDtcToXaHelperSinglePipe' : missing storage-class or type specifiers msdtc_enlist.cpp(148) : error C2501: 'helper' : missing storage-class or type specifiers msdtc_enlist.cpp(173) : error C2143: syntax error : missing ';' before '*' msdtc_enlist.cpp(173) : error C2501: 'ITransactionEnlistmentAsync' : missing storage-class or type specifiers msdtc_enlist.cpp(173) : error C2501: 'enlist' : missing storage-class or type specifiers msdtc_enlist.cpp(190) : error C2061: syntax error : identifier 'IDtcToXaHelperSinglePipe' msdtc_enlist.cpp(248) : error C2614: 'IAsyncPG' : illegal member initialization: 'enlist' is not a base or member msdtc_enlist.cpp(248) : error C2614: 'IAsyncPG' : illegal member initialization: 'helper' is not a base or member msdtc_enlist.cpp(292) : error C2065: 'IID_ITransactionResourceAsync' : undeclared identifier msdtc_enlist.cpp(547) : error C2065: 'enlist' : undeclared identifier msdtc_enlist.cpp(547) : error C2227: left of '->PrepareRequestDone' must point to class/struct/union msdtc_enlist.cpp(566) : error C2227: left of '->CommitRequestDone' must point to class/struct/union msdtc_enlist.cpp(585) : error C2227: left of '->AbortRequestDone' must point toclass/struct/union msdtc_enlist.cpp(593) : error C2065: 'helper' : undeclared identifier msdtc_enlist.cpp(593) : error C2227: left of '->ReleaseRMCookie' must point to class/struct/union msdtc_enlist.cpp(594) : error C2227: left of '->Release' must point to class/struct/union msdtc_enlist.cpp(716) : error C2227: left of '->AddRef' must point to class/struct/union msdtc_enlist.cpp(721) : error C2227: left of '->Release' must point to class/struct/union msdtc_enlist.cpp(752) : error C2227: left of '->AddRef' must point to class/struct/union msdtc_enlist.cpp(757) : error C2227: left of '->Release' must point to class/struct/union msdtc_enlist.cpp(935) : error C2143: syntax error : missing ';' before '*' msdtc_enlist.cpp(935) : error C2065: 'pHelper' : undeclared identifier msdtc_enlist.cpp(935) : error C2100: illegal indirection msdtc_enlist.cpp(936) : error C2065: 'ITransactionResourceAsync' : undeclared identifier msdtc_enlist.cpp(936) : error C2065: 'pRes' : undeclared identifier msdtc_enlist.cpp(936) : error C2106: '=' : left operand must be l-value msdtc_enlist.cpp(945) : error C2065: 'IID_IDtcToXaHelperSinglePipe' : undeclared identifier msdtc_enlist.cpp(968) : error C2227: left of '->XARMCreate' must point to class/struct/union msdtc_enlist.cpp(972) : error C2065: 'XACT_E_XA_TX_DISABLED' : undeclared identifier msdtc_enlist.cpp(1008) : error C2227: left of '->ConvertTridToXID' must point to class/struct/union msdtc_enlist.cpp(1024) : error C2227: left of '->EnlistWithRM' must point to class/struct/union msdtc_enlist.cpp(1024) : error C2039: 'enlist' : is not a member of 'IAsyncPG' msdtc_enlist.cpp(144) : see declaration of 'IAsyncPG' msdtc_enlist.cpp(1028) : error C2227: left of '->ReleaseRMCookie' must point to class/struct/union NMAKE : fatal error U1077: 'cl.exe' : return code '0x2' Stop. Do I need an SDK or something for DTC support? This is VC++ 6 btw. Also, I notice that the ANSI builds identify their filename as psqlodbc35w - perhaps that should be hacked in the RC file? Regards, Dave.
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Hiroshi Saito"
Date:
Hi Dave. > Do I need an SDK or something for DTC support? This is VC++ 6 btw. The support is only VC7 and VC8. Probably, an initial value has set MSDTC=no. or It changes with build at the time of MSDTC=yes. > > Also, I notice that the ANSI builds identify their filename as > psqlodbc35w - perhaps that should be hacked in the RC file? Ahh..,Is it clarifying what was built by the variable? Regards, Hiroshi Saito
Hiroshi Saito wrote: > Hi Dave. > >> Do I need an SDK or something for DTC support? This is VC++ 6 btw. > > The support is only VC7 and VC8. Probably, an initial value has set > MSDTC=no. > or It changes with build at the time of MSDTC=yes. Hmm it's a problem. Would the release contain the dll without MSDTC support ? >> Also, I notice that the ANSI builds identify their filename as >> psqlodbc35w - perhaps that should be hacked in the RC file? > > Ahh..,Is it clarifying what was built by the variable? Oops my oversight. Thanks for your fix. Regards, Hiroshi Inoue>
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Hiroshi Saito"
Date:
Hi Inoue-san. From: "Hiroshi Inoue" > Hiroshi Saito wrote: >> Hi Dave. >> >>> Do I need an SDK or something for DTC support? This is VC++ 6 btw. >> >> The support is only VC7 and VC8. Probably, an initial value has set >> MSDTC=no. >> or It changes with build at the time of MSDTC=yes. > > Hmm it's a problem. Would the release contain the dll without MSDTC > support ? Ea? Does it mean build by VC6? Regards, Hiroshi Saito
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: Hiroshi Saito [mailto:z-saito@guitar.ocn.ne.jp] > Sent: 29 August 2006 17:19 > To: Dave Page; Hiroshi Inoue > Cc: pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed > dllname of win32 ANSI: psqlodbca Unicode: > > Hi Dave. > > > Do I need an SDK or something for DTC support? This is VC++ 6 btw. > > The support is only VC7 and VC8. Probably, an initial value > has set MSDTC=no. > or It changes with build at the time of MSDTC=yes. Yeah, saw the MSDTC option. Well, I can build with MSDTC support using VC++ 2k5 if people want, however that will require shipping the VC8 runtimes as well. Do people want that? However, that said, nmake from VC8 crashes when creating the output directory, and the debug build in the IDE fails with undefined symbols in inouealc.c, and has no targets for the ANSI driver :-( I'm afraid I'm rather busy (as usual) at the moment so don't have time to look into these issues in depth. Strangely I'm also seeing another odd error with VC++ 6.0 - if I don't specify MSDTC on the command line I get: C:\Documents and Settings\dpage\My Documents\CVS\psqlodbc>nmake /f win32.mak CFG=Release Microsoft (R) Program Maintenance Utility Version 6.00.9782.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. Building the PostgreSQL Unicode 3.5 Driver for Win32... Using default PostgreSQL Include directory: C:\Program Files\PostgreSQL\8.1\include Using default PostgreSQL Library directory: C:\Program Files\PostgreSQL\8.1\lib\ms Using default OpenSSL Include directory: C:\OpenSSL\include Using default OpenSSL Library directory: C:\OpenSSL\lib\VC win32.mak(75) : fatal error U1023: syntax error in expression Stop. Which seems odd as MSDTC should get set by line 68 of the makefile... > > Also, I notice that the ANSI builds identify their filename as > > psqlodbc35w - perhaps that should be hacked in the RC file? > > Ahh..,Is it clarifying what was built by the variable? Yeah we used to have some conditionals in the .rc file so that it became clear which was the Unicode and which was the ANSI driver. Regards, Dave.
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Hiroshi Saito"
Date:
Hi Dave. > > The support is only VC7 and VC8. Probably, an initial value > > has set MSDTC=no. > > or It changes with build at the time of MSDTC=yes. > > Yeah, saw the MSDTC option. Probably, VC7 may be desirable supposing a formal binary release. > Which seems odd as MSDTC should get set by line 68 of the makefile... Uga, Sorry.... I was mistake it. fixed it now. > Yeah we used to have some conditionals in the .rc file so that it > became clear which was the Unicode and which was the ANSI driver. Ok, Preparation was completed. Regards, Hiroshi Saito
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: Hiroshi Inoue [mailto:inoue@tpf.co.jp] > Sent: 30 August 2006 01:03 > To: Hiroshi Saito > Cc: Dave Page; pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed > dllname of win32 ANSI: psqlodbca Unicode: > > Hiroshi Saito wrote: > > Hi Dave. > > > >> Do I need an SDK or something for DTC support? This is VC++ 6 btw. > > > > The support is only VC7 and VC8. Probably, an initial > value has set > > MSDTC=no. > > or It changes with build at the time of MSDTC=yes. > > Hmm it's a problem. Would the release contain the dll without MSDTC > support ? As I mentioned in my reply to Saito-san, I can include DTC in the build (compilation problems aside) if people don't object to me adding the VC8 runtimes to the package. There are other advantages to doing that of course - we can standardize the build env on the tools that MS now provide for free, so anyone can hack the code without needing version specific hacks (such as the delayed libpq load). Regards, Dave.
Re: [COMMITTERS] psqlodbc - psqlodbc: Fixed dllname of win32 ANSI: psqlodbca Unicode:
From
"Dave Page"
Date:
> -----Original Message----- > From: Hiroshi Saito [mailto:z-saito@guitar.ocn.ne.jp] > Sent: 30 August 2006 08:42 > To: Dave Page; Hiroshi Inoue > Cc: pgsql-odbc@postgresql.org > Subject: Re: [ODBC] [COMMITTERS] psqlodbc - psqlodbc: Fixed > dllname of win32 ANSI: psqlodbca Unicode: > > Hi Dave. > > > > The support is only VC7 and VC8. Probably, an initial value > > > has set MSDTC=no. > > > or It changes with build at the time of MSDTC=yes. > > > > Yeah, saw the MSDTC option. > > Probably, VC7 may be desirable supposing a formal binary release. VC8 would be better as it's both the latest and free for anyone to use. Also, I only have 6, 7.1 and 8 (no 7). Does nmake from VC8 work for you? I find it crashes when running CLEAN or when it tries to create the output directory. > > Which seems odd as MSDTC should get set by line 68 of the > makefile... > > Uga, Sorry.... I was mistake it. fixed it now. Thanks. > > Yeah we used to have some conditionals in the .rc file so that it > > became clear which was the Unicode and which was the ANSI driver. > > Ok, Preparation was completed. Fast work - thanks :-) /D