Re: psqlodbc 09.05.0210 commit "Don't do premature execution." Numeric Filter issue?
От | Inoue, Hiroshi |
---|---|
Тема | Re: psqlodbc 09.05.0210 commit "Don't do premature execution." Numeric Filter issue? |
Дата | |
Msg-id | 575F7E4C.10509@dream.email.ne.jp обсуждение исходный текст |
Ответ на | psqlodbc 09.05.0210 commit "Don't do premature execution." Numeric Filter issue? (ljwilson <ljwilson@digitalav.com>) |
Список | pgsql-odbc |
Hi Jack, On 2016/06/14 5:14, ljwilson wrote: > I've been using in production psqlodbc 09.02.0100 (unicode, 32-bit) for the > last three years. A couple of weeks ago after upgrading a client's server to > the latest PostgreSQL 9.5.2 (32-bit) I thought I would test the latest > psqlodbc 09.05.0210 (unicode, 32-bit) on one of their machines. I hadn't > found any issues with it in my testing, but of course the client found one > straight away... > > These are all Windows machines. And I've tested with PostgreSQL 9.4.6 > (32-bit) too--no difference. > > The issue is when exporting records. Where the older driver 09.02.0100 would > get two records with the given filter, the new driver 09.05.0210 would get > all the records (4419). Nothing different code or data-wise; just switching > the driver version made the difference. > > So I went back to the git repository and by dividing and conquering > (download a version, compile, install, test) determined the exact commit > that changed the behavior: > > "Don't do premature execution." > https://git.postgresql.org/gitweb/?p=psqlodbc.git;a=commit;h=e5e048509bada06c61f05901904ddbdda070bd10 > <https://git.postgresql.org/gitweb/?p=psqlodbc.git;a=commit;h=e5e048509bada06c61f05901904ddbdda070bd10> > > For testing, I took the latest from git ( > https://git.postgresql.org/gitweb/?p=psqlodbc.git;a=commit;h=f7d5623f538cb94c8e717e3447ab8be93b9cecfb > <https://git.postgresql.org/gitweb/?p=psqlodbc.git;a=commit;h=f7d5623f538cb94c8e717e3447ab8be93b9cecfb> > ), and reverted from it the above commit ("Don't do premature execution."). > That made it easy to test, since doing that put back in the option to > allow/disable premature execution. By leaving "Disable Premature Execution" > unchecked all worked as before. > > But note I would have the same issue with older drivers when I went back to > test with them by simply checking the "Disable Premature Execution" box. > > I'm hoping someone can examine the two mylogs and see what the problem is. I > suspect a precision issue of some kind, since the filter to export the > records uses datetime columns expressed as a 12-digit pdecimal(12,0) on the > client side, which is stored as numeric(14,0) on the PostgreSQL side. I > tried changing it to numeric(12,0) on the PostgreSQL side, and decimal(12,0) > on the client side too, but no difference. > > Compressed the two mylogs are almost 31MB--I can put them somewhere for > download. Could you put them somewhere for download? regards, Hiroshi Inoue
В списке pgsql-odbc по дате отправления: