Hiroshi Saito [Sat, 19 May 2018 10:59:07 +0000 (19:59 +0900)]
Prep release 10.03.0000
Hiroshi Inoue [Thu, 17 May 2018 03:05:25 +0000 (12:05 +0900)]
Reduce DB access to pg_class or pg_index by caching relhasoids, relhassubclass etc.
It would improve the performance of SQLSetPos() or SQLBulkOperations() very much in some cases.
Per report from Takayuki Tsunakawa.
Hiroshi Inoue [Sun, 13 May 2018 11:58:06 +0000 (20:58 +0900)]
Add a parameter SpecificDsn of regress.ps1.
Maxim Zakharov [Fri, 11 May 2018 08:36:58 +0000 (18:36 +1000)]
fix build on Solaris using Solaris Studio
Hiroshi Inoue [Sat, 12 May 2018 12:51:51 +0000 (21:51 +0900)]
Fix some typos in help messages of regrees.ps1.
Also cleanup the handling of DeclareFetch parameter a little.
Hiroshi Inoue [Sat, 12 May 2018 04:00:33 +0000 (13:00 +0900)]
Let SQLTables() or SQLTablePrivileges() show partition tables.
Hiroshi Inoue [Fri, 11 May 2018 09:42:08 +0000 (18:42 +0900)]
Fix a crash bug when handling error messages.
Also modified some error messages.
Hiroshi Inoue [Wed, 2 May 2018 02:35:35 +0000 (11:35 +0900)]
Revise ConfigDSN() so that it handles the 4th parameter(lpszAttribues) correctly.
Per report from Haribabu Kommi.
Hiroshi Inoue [Wed, 2 May 2018 02:09:30 +0000 (11:09 +0900)]
Fix SQLGetTypeInfo() so that it filters SQL_TYPE_DATE, SQL_TYPE_TIME or SQL_TYPE_TIMESTAMP for ODBC 2.x applications.
Per report from Oleg Tonkikh.
Hiroshi Inoue [Wed, 18 Apr 2018 08:52:58 +0000 (17:52 +0900)]
Put back the handling of lock_CC_for_rb variable.
The variable lock_CC_for_rb should be held per connection.
Per report from Ayman Samamry.
Hiroshi Saito [Fri, 30 Mar 2018 14:36:58 +0000 (23:36 +0900)]
Fixed typo..
Hiroshi Saito [Fri, 30 Mar 2018 14:06:14 +0000 (23:06 +0900)]
Prep release 10.02.0000
Hiroshi Inoue [Tue, 27 Mar 2018 08:38:50 +0000 (17:38 +0900)]
Fix a crash bug in AddDeleted().
Report and patch by Takayuki Tsunakawa.
Hiroshi Inoue [Tue, 27 Mar 2018 02:08:42 +0000 (11:08 +0900)]
Make SQLSetPos(SQL_DELETE/SQL_REFRESH) more effective.
Because queries calling currtid(2) like
select .. from .. where ctid=currtid2(.., ..)
cause Seq Scan, their execution may be very slow.
It is better to execute queries using subqueries like
select .. from .. where ctid=(select currtid2(.., ..))
because they cause Tid Scan.
Report and changes by Tsunakawa Takayuki.
Hiroshi Inoue [Mon, 26 Mar 2018 14:34:05 +0000 (23:34 +0900)]
Handle MALLOC/REALLOC errors while fetching tuples more effectively.
Per report from Haruka Takatsuka.
Hiroshi Inoue [Sat, 17 Mar 2018 13:03:45 +0000 (22:03 +0900)]
Oops, setting *tidval* variable in SC_pos_reload_with_key() was missing by mistake.
Hiroshi Inoue [Mon, 26 Mar 2018 13:29:18 +0000 (22:29 +0900)]
Modify positioned-update-test.
1. Add a SQLSetPos(.., SQL_REFRESH, ..) call so that the test passes SC_pos_reload().
2. Add a primary key to pos-update-test table(KEYSET-DRIVEN cursor needs non null int4/oid unique key).
3. Add expected/positioned-update-test_1.out for KEYSET-DRIVEN cursors.
Hiroshi Inoue [Wed, 14 Feb 2018 10:32:22 +0000 (19:32 +0900)]
Avoid replacing effective notice messages.
Report from Wolfgang Apolinarski. Patch by Clemens Ladisch.
Ayappan [Mon, 12 Mar 2018 15:03:06 +0000 (10:03 -0500)]
Fix build for non-gcc systems
Hiroshi Inoue [Wed, 28 Feb 2018 06:12:44 +0000 (15:12 +0900)]
It's safer to call setlocale(LC_CTYPE, "") than calling setlocale(LC_ALL, "").
Report and patch by Mario De Frutos.
Hiroshi Inoue [Fri, 12 Jan 2018 08:27:43 +0000 (17:27 +0900)]
It is not appropriate to distribute test/Makefile.
The file isn't in git repo and is generated depending on the environment via configure operation.
Hiroshi Inoue [Fri, 12 Jan 2018 03:26:43 +0000 (12:26 +0900)]
Fix a bug in is_setting_search_path. A pointer might be incremented to point beyond the null terminator.
Report and patch by Grant Shirreffs.
Hiroshi Inoue [Sun, 31 Dec 2017 03:13:34 +0000 (12:13 +0900)]
Oops, get_DocumentElement() doesn't return xml type.
Hiroshi Saito [Thu, 28 Dec 2017 12:37:01 +0000 (21:37 +0900)]
Fixed typo release document.
Hiroshi Saito [Wed, 27 Dec 2017 13:16:28 +0000 (22:16 +0900)]
Prep release 10.01.0000
Hiroshi Inoue [Tue, 26 Dec 2017 02:03:59 +0000 (11:03 +0900)]
Review the level of MYLOG, QLOG.
Divide *level 1(detail)* log into *level 1(tuple level)* log and *level 2(detail)* log.
Hiroshi Inoue [Sat, 23 Dec 2017 23:36:00 +0000 (08:36 +0900)]
Free any data at exec params before the statement is executed again or the next set of parameters is processed. If not, then there will be a memory leak when the next SQLParamData/SQLPutData is called.
Per report from Mihai Giurgeanu <mihai.giurgeanu@gmail.com>.
Hiroshi Inoue [Sat, 23 Dec 2017 07:52:52 +0000 (16:52 +0900)]
Fix a bug in pgdebug_realloc().
Fix compiler warnings in inouealc.c
Hiroshi Inoue [Fri, 22 Dec 2017 23:21:41 +0000 (08:21 +0900)]
Use MYLOG instead of inolog in inouealc.c .
Hiroshi Inoue [Thu, 23 Nov 2017 00:55:09 +0000 (09:55 +0900)]
Add add an option -NoPDB to buildInstallers.ps1.
The switch option can be specified so as to exclude PDB files from the installers.
Hiroshi Inoue [Mon, 20 Nov 2017 10:11:14 +0000 (19:11 +0900)]
Review the handling of @@IDENTITY when a column's default is nextval(a_sequence) but the column isn't a serial. Unfortunately the function pg_get_serial_sequence() doesn't work for sequences which aren't serial type.
Hiroshi Inoue [Thu, 16 Nov 2017 06:11:31 +0000 (15:11 +0900)]
Fix my mistake of previous commit.
Hiroshi Inoue [Wed, 18 Oct 2017 02:51:30 +0000 (11:51 +0900)]
Call Get-VSSetupInstance to detect Visual Studio installations whose version >= 15 when VSSetup module is available.
Hiroshi Saito [Fri, 13 Oct 2017 13:29:37 +0000 (22:29 +0900)]
Prep version 10.00.0000!
Hiroshi Inoue [Thu, 12 Oct 2017 08:02:00 +0000 (17:02 +0900)]
Fix the bug that 'create table T_$001 (\81c)' fails when useServerSidePrepare is turned on.
Per report from Gregory Pruss.
Hiroshi Inoue [Thu, 5 Oct 2017 13:02:01 +0000 (22:02 +0900)]
Correct the use of MatchInfo object which is an output of Select-String.
Hiroshi Inoue [Wed, 4 Oct 2017 02:59:31 +0000 (11:59 +0900)]
Preparation for development with VC15(VS 2017).
Hiroshi Inoue [Sat, 30 Sep 2017 00:02:22 +0000 (09:02 +0900)]
Don't forget to call resetPQExpBuffer() before processing a new query.
Hiroshi Inoue [Tue, 26 Sep 2017 22:29:44 +0000 (07:29 +0900)]
Use macro IS_NOT_SPACE() instead of !isspace() to ensure that !isspace() is applied to non-null characters.
Hiroshi Inoue [Wed, 27 Sep 2017 12:53:25 +0000 (21:53 +0900)]
Correct CC_set_error_if_not_set().
Hiroshi Inoue [Wed, 27 Sep 2017 01:37:16 +0000 (10:37 +0900)]
Improve the use of SC_error_copy() in info.c.
Hiroshi Inoue [Sun, 24 Sep 2017 11:33:05 +0000 (20:33 +0900)]
Improve error handling in info.c.
Hiroshi Inoue [Sun, 24 Sep 2017 05:55:46 +0000 (14:55 +0900)]
Change QLOG() so that it calls corresponding MYLOG() as well.
Hiroshi Inoue [Sun, 24 Sep 2017 03:19:55 +0000 (12:19 +0900)]
Change the return value of strncpy_null() from char * to size_t.
Hiroshi Inoue [Sat, 23 Sep 2017 00:21:31 +0000 (09:21 +0900)]
Review getNextToken() in parse.c.
Hiroshi Inoue [Fri, 22 Sep 2017 03:46:43 +0000 (12:46 +0900)]
Use pg_get_serial_sequence() to get serial sequence of identity columns or serial columns. pg_get_serial_sequence() for identity columns became available in PG 10 rc1.
Hiroshi Inoue [Thu, 21 Sep 2017 08:32:03 +0000 (17:32 +0900)]
Review the use of encoded_nextchar().
Remove variables which work in conjunction with encstr(encoded_str) so as to avoid misleadingness.
Hiroshi Inoue [Wed, 20 Sep 2017 09:52:40 +0000 (18:52 +0900)]
Fix "unrecognized format function type" warnings in old GCC.
Also use PG_PRINTF_ATTRIBUTE instead of printf in __attribute__((format(printf, .., ..))) function attribute.
Hiroshi Inoue [Mon, 18 Sep 2017 06:09:35 +0000 (15:09 +0900)]
Improve @@identty handling.
Use multibyte-aware eatTableIdentifiers() instead of next_name_token().
Use identifierEscape() to escape single quotes or double quotes.
Hiroshi Inoue [Sun, 17 Sep 2017 13:11:21 +0000 (22:11 +0900)]
Add some QLOGs.
Hiroshi Inoue [Tue, 12 Sep 2017 22:50:25 +0000 (07:50 +0900)]
Remove the "unknown" column from colattribute-test regression test.
Because there's no "unknown" output column in PG10 servers, it seems meaningless to test "unknown" case.
Hiroshi Inoue [Tue, 12 Sep 2017 11:10:45 +0000 (20:10 +0900)]
For PG10 servers, we will never see "unknown" output columns.
Fix regression test catalogfunctions-test for PG10 servers.
Hiroshi Inoue [Tue, 12 Sep 2017 02:55:23 +0000 (11:55 +0900)]
Handle PG 10 identity columns.
Hiroshi Inoue [Sun, 10 Sep 2017 04:34:41 +0000 (13:34 +0900)]
Fix multibyte handling of ansi driver.
Hiroshi Inoue [Fri, 8 Sep 2017 05:55:42 +0000 (14:55 +0900)]
Fix a compiler warning.
Hiroshi Inoue [Thu, 7 Sep 2017 08:12:14 +0000 (17:12 +0900)]
Don't forget to set default values when registering dsn via RegisterRegDsn.
Hiroshi Saito [Tue, 5 Sep 2017 14:02:48 +0000 (23:02 +0900)]
Prep release 09.06.0500
Hiroshi Inoue [Sun, 3 Sep 2017 08:22:29 +0000 (17:22 +0900)]
Fix compiler warnings.
Hiroshi Inoue [Sun, 3 Sep 2017 05:10:14 +0000 (14:10 +0900)]
Allow PROCCALL in ReadOnly mode.
Per report from Matej Mihelic.
Hiroshi Inoue [Sat, 2 Sep 2017 11:30:13 +0000 (20:30 +0900)]
Move 2 CtrlCheckButton() calls into a switch statement.
Hiroshi Inoue [Wed, 30 Aug 2017 08:00:35 +0000 (17:00 +0900)]
Add __attribute__((format(printf,3,4))) to the declaration of snprintfcat().
Hiroshi Inoue [Fri, 1 Sep 2017 03:08:29 +0000 (12:08 +0900)]
Improve QLOG.
Hiroshi Inoue [Wed, 30 Aug 2017 11:25:51 +0000 (20:25 +0900)]
Review ER_ReturnError().
Hiroshi Inoue [Wed, 30 Aug 2017 07:05:40 +0000 (16:05 +0900)]
Add level parameter to Commlog/Mylog option of setup program.
Hiroshi Inoue [Wed, 30 Aug 2017 05:40:48 +0000 (14:40 +0900)]
Add missing type declaration of log_params().
Hiroshi Inoue [Wed, 30 Aug 2017 05:20:35 +0000 (14:20 +0900)]
Further improvement of qlog.
Hiroshi Inoue [Tue, 29 Aug 2017 22:56:33 +0000 (07:56 +0900)]
Put back the behavior when conversion errors from the current locale to SQLWCHAR occur.
Simply returns zero length string instead of erroring out.
Per report from Andrus.
Also take logs when conversion errors occur.
Hiroshi Inoue [Tue, 29 Aug 2017 22:46:08 +0000 (07:46 +0900)]
Fix a compilation failure with nmake since
503bb09.
Report and patch by Michael Paquier.
Hiroshi Inoue [Tue, 29 Aug 2017 01:21:57 +0000 (10:21 +0900)]
Detect fast shutdown while connecting.
Hiroshi Inoue [Sun, 27 Aug 2017 13:06:59 +0000 (22:06 +0900)]
Further Mylog renewal.
Hiroshi Inoue [Fri, 25 Aug 2017 02:56:56 +0000 (11:56 +0900)]
Fix bug that calls strdup() for NULL pointers.
Per report from Ding, Haiqiang.
Hiroshi Inoue [Thu, 24 Aug 2017 11:19:36 +0000 (20:19 +0900)]
Remove the GssAuthUseGssapi option completely.
Hiroshi Inoue [Thu, 24 Aug 2017 02:31:10 +0000 (11:31 +0900)]
Move the implemetation of GetExeName() from psqlodbc.c(psqlsetup.c) to mylog.c.
Hiroshi Inoue [Wed, 23 Aug 2017 05:47:39 +0000 (14:47 +0900)]
The second cut of QLOG renewal.
Hiroshi Inoue [Tue, 22 Aug 2017 03:56:07 +0000 (12:56 +0900)]
Use macro QLOG instead of function qlog.
Hiroshi Inoue [Tue, 22 Aug 2017 01:34:18 +0000 (10:34 +0900)]
Stop build operations on error.
Hiroshi Inoue [Mon, 21 Aug 2017 22:10:02 +0000 (07:10 +0900)]
Fixed typos.
Hiroshi Inoue [Mon, 21 Aug 2017 21:54:58 +0000 (06:54 +0900)]
The 1st cut of qlog renewal.
Removed some qlogs, changed some qlogs to MYLOG and added some qlogs.
Hiroshi Inoue [Mon, 21 Aug 2017 11:07:19 +0000 (20:07 +0900)]
Fix an parameter unmatch error which would cause a crash.
Hiroshi Inoue [Sun, 20 Aug 2017 05:41:00 +0000 (14:41 +0900)]
Add __FILE__, __FUNCTION__, __LINE__ to MYLOG.
Hiroshi Inoue [Sun, 20 Aug 2017 02:13:41 +0000 (11:13 +0900)]
Introduce token control while parsing.
Detect *select .. into* or *select ... for update* and suppress *declare .. cursor for* clause in declare/fetch mode using the mechanism.
Hiroshi Inoue [Sat, 19 Aug 2017 23:52:34 +0000 (08:52 +0900)]
Add a test case to parse-test.
Hiroshi Inoue [Sat, 19 Aug 2017 11:16:06 +0000 (20:16 +0900)]
Fix catalogfunctions-test. The output of catalogfunctions-test was changed along with the change of parse-test.
Hiroshi Inoue [Sat, 19 Aug 2017 05:45:33 +0000 (14:45 +0900)]
Add 2 test cases to parse-test which handles '$'s in identifiers.
Hiroshi Inoue [Fri, 18 Aug 2017 06:53:06 +0000 (15:53 +0900)]
Add more test cases to parse-test.
Hiroshi Inoue [Fri, 18 Aug 2017 03:52:09 +0000 (12:52 +0900)]
Add a test case for parse-test.
Hiroshi Inoue [Wed, 16 Aug 2017 03:22:02 +0000 (12:22 +0900)]
Let program name as a part of logfile name. This would make debugging a little easier.
Hiroshi Inoue [Wed, 16 Aug 2017 05:25:54 +0000 (14:25 +0900)]
Modify one MYLOG() and one MYPRINTF().
Hiroshi Inoue [Wed, 16 Aug 2017 03:29:16 +0000 (12:29 +0900)]
Fix some compiler warnings about MYLOG calls.
Hiroshi Inoue [Wed, 16 Aug 2017 02:23:51 +0000 (11:23 +0900)]
Implement myprintf() which prints logs according to printf format and make logs a little easier to read using the macro MYPRINTF() which calls myprintf().
Hiroshi Inoue [Tue, 15 Aug 2017 08:19:13 +0000 (17:19 +0900)]
Review the use of mylog().
Use macro MYLOG instead of function mylog in preparation for later changes and unify mylog() and inolog() using level parameter.
Enable the compiler to check the format string against the parameter of mylog() by adding __attribute__((format(printf,.,.))) to the declaration of mylog(GCC only).
Using this mechanism, check and fix many discordances of parameters.
Hiroshi Inoue [Tue, 15 Aug 2017 05:19:08 +0000 (14:19 +0900)]
Reduce the use of snprintfcat(or SPRINTFCAT_FIXED macro) as much as possible.
Instead use PQExpBuffer library without having to worry about buffer length.
Hiroshi Inoue [Mon, 14 Aug 2017 11:26:09 +0000 (20:26 +0900)]
Remove a meaningless 'static'.
Hiroshi Inoue [Thu, 10 Aug 2017 22:22:54 +0000 (07:22 +0900)]
Handle '$'s in identifiers correctly.
Also take multibyte characters into account in identifiers.
Hiroshi Inoue [Sun, 6 Aug 2017 01:34:39 +0000 (10:34 +0900)]
Fix a bug when fetching bytea field to SQL_C_BINALY data.
It's bad to double count of bytes.
Hiroshi Inoue [Wed, 2 Aug 2017 12:28:47 +0000 (21:28 +0900)]
Allow building test suite using nmake in a different place other than the source code is.
Hiroshi Inoue [Sun, 6 Aug 2017 05:16:42 +0000 (14:16 +0900)]
Add linker option /MANIFEST:EMBED so as to build test programs in regression test using nmake. It is necessary for update-test and positioned-update-test because they would require administrator privileges without the option.
Hiroshi Inoue [Thu, 3 Aug 2017 09:55:54 +0000 (18:55 +0900)]
Fix a linkage error when doing installcheck for test/win.mak.
Report and patch by Kazuki Uehara.
Hiroshi Inoue [Mon, 31 Jul 2017 06:05:59 +0000 (15:05 +0900)]
Fix a segfault on ResolveOneParam() function while executing a query after calling SQLSetStmtAttr(.., SQL_ATTR_APP_PARAM_DESC, an_ARD_for_another_statement, ..).
Hiroshi Saito [Thu, 27 Jul 2017 13:51:53 +0000 (22:51 +0900)]
Prep release 09.06.0410