- 03 12月, 2015 10 次提交
-
-
由 Heikki Linnakangas 提交于
This adds the log_temp_files GUC. All the other changes in this batch we had backported already. Conflicts: contrib/adminpack/adminpack.c contrib/pgbench/pgbench.c doc/README.mb.big5 doc/TODO doc/src/FAQ/TODO.html doc/src/sgml/Makefile doc/src/sgml/charset.sgml doc/src/sgml/config.sgml doc/src/sgml/docguide.sgml src/backend/access/common/heaptuple.c src/backend/access/heap/heapam.c src/backend/storage/file/fd.c src/backend/utils/misc/postgresql.conf.sample src/include/access/heapam.h src/include/access/htup.h src/include/utils/guc.h src/tools/copyright src/tools/msvc/build.bat src/tools/msvc/gendef.pl
-
由 Heikki Linnakangas 提交于
Revert those.
-
由 Heikki Linnakangas 提交于
I suspect these files used DOS line endings at some point, and they got mangled into two newlines. I did this for select.sgml as part of previous merge commit already.
-
由 Heikki Linnakangas 提交于
This adds support for NULLS FIRST/LAST. Also bump the ORCA version number, as ORCA had to be slightly modified to support NULLS FIRST. There is a change to the behaviour of NULL constants in a UNION. This used to work in Greenplum: "select 1 union select distinct null", but now it throws an error because the datatype of the NULL is not not known. It has always thrown an error in PostgreSQL, and I couldn't figure out if it was an intentional change in Greenplum, or something that fell out of other changes by accident. I'm not sure what part of this patch caused that change in behaviour. If that was intentional, we might have to change it again, but for now I changed the expected output of regression tests to match the upstream behaviour. Conflicts: doc/TODO doc/src/FAQ/TODO.html doc/src/sgml/catalogs.sgml doc/src/sgml/queries.sgml doc/src/sgml/ref/create_index.sgml doc/src/sgml/sql.sgml doc/src/sgml/xindex.sgml src/backend/access/hash/README src/backend/access/nbtree/README src/backend/access/nbtree/nbtsearch.c src/backend/catalog/index.c src/backend/catalog/toasting.c src/backend/commands/analyze.c src/backend/commands/indexcmds.c src/backend/executor/nodeAgg.c src/backend/executor/nodeSort.c src/backend/nodes/copyfuncs.c src/backend/nodes/outfuncs.c src/backend/optimizer/path/allpaths.c src/backend/optimizer/plan/createplan.c src/backend/optimizer/util/clauses.c src/backend/parser/analyze.c src/backend/parser/gram.y src/backend/parser/keywords.c src/backend/parser/parse_clause.c src/backend/parser/parser.c src/backend/utils/adt/ruleutils.c src/backend/utils/adt/selfuncs.c src/backend/utils/cache/lsyscache.c src/backend/utils/sort/tuplesort.c src/include/catalog/catversion.h src/include/catalog/pg_am.h src/include/nodes/plannodes.h src/include/nodes/relation.h src/include/parser/parse_clause.h src/include/utils/tuplesort.h src/test/regress/expected/create_index.out src/test/regress/expected/select.out src/test/regress/sql/geometry.sql src/test/regress/sql/select.sql src/tools/msvc/README src/tools/msvc/mkvcbuild.pl
-
由 Shang Shujie 提交于
-
由 Yandong Yao 提交于
-
由 Entong Shen 提交于
This reverts commit 82216def.
-
由 Entong Shen 提交于
-
由 Nikos Armenatzoglou 提交于
Function pinv, and not its caller, should be responsible for initiating the entries of the result table. Actually, we move the fix of commit 5d870156 inside pinv.
-
由 Heikki Linnakangas 提交于
This was causing a segfault when compiling with -O3 on Centos 7 (gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-9)). I'm not 100% if that was actually a compiler bug, but unaligned access would definitely be wrong on architectures that are strict on alignment anyway.
-
- 02 12月, 2015 7 次提交
-
-
由 Gang Xiong 提交于
When there are too many constant predicates in IN (NOT IN) clause, signal is not handled in the loop of calling predicate_refuted_by_recurse.
-
由 Gang Xiong 提交于
Alter partitioned table set distributed by will dispatch information from QD to QEs, the information is not correctly coded and decoded on both sides when: 1. reorganize = false. 2. table have index. 3. partition table have "with" option.
-
由 Heikki Linnakangas 提交于
This was put in some time ago as a work-around for detection of SSE 4.2 support. But we have pretty solid autoconf magic for that now, so that's no longer needed. Moreover, that rock-solid autoconf magic was getting confused by the way we pass compiler flags in CC rather than CFLAGS.
-
由 Lirong Jian 提交于
-
由 Jimmy Yih 提交于
Authors: Jimmy Yih and James McAtamney
-
由 Jimmy Yih 提交于
Previously, when performing an incremental restore, tuple counts on the master for all AO/CO tables would be updated, including those AO/CO tables that already existed in the target database. These counts would still be updated regardless of which tables were restored, or whether any of the restored tables were AO/CO tables. AO/CO statistics are now updated only for those AO/CO tables that are part of the incremental restore. Authors: Jimmy Yih and James McAtamney
-
由 Ed Espino 提交于
-
- 01 12月, 2015 11 次提交
-
-
由 Garrett Thornburg 提交于
This patch merges the PostgreSQL 9.5 implementation of SSE4.2 into GPDB. The SSE4.2 implementation was lifted right out of PostgreSQL without change to make merging later PostgreSQL releases easier. Update win32 configuration to support SSE4.2 runtime checks This change was pulled from "src/include/pg_config.h.win32" from the commits below. configure.in changes, determining if cpu instruction for perfomring runtime checks are availible, and moving some of the code to port SSE4.2 came from the following PostgreSQL commits: commit 3dc2d62d Author: Heikki Linnakangas <heikki.linnakangas@iki.fi> Date: Tue Apr 14 17:05:03 2015 +0300 Use Intel SSE 4.2 CRC instructions where available. Modern x86 and x86-64 processors with SSE 4.2 support have special instructions, crc32b and crc32q, for calculating CRC-32C. They greatly speed up CRC calculation. Whether the instructions can be used or not depends on the compiler and the target architecture. If generation of SSE 4.2 instructions is allowed for the target (-msse4.2 flag on gcc and clang), use them. If they are not allowed by default, but the compiler supports the -msse4.2 flag to enable them, compile just the CRC-32C function with -msse4.2 flag, and check at runtime whether the processor we're running on supports it. If it doesn't, fall back to the slicing-by-8 algorithm. (With the common defaults on current operating systems, the runtime-check variant is what you get in practice.) Abhijit Menon-Sen, heavily modified by me, reviewed by Andres Freund. commit b4eb2d16 Author: Heikki Linnakangas <heikki.linnakangas@iki.fi> Date: Tue Apr 14 19:56:00 2015 +0300 On gcc and clang, the _mm_crc32_u8 and _mm_crc32_u64 intrinsics are not defined at all, when not building with -msse4.2. But on icc, they are. So we cannot assume that if those intrinsics are defined, we can always use them safely, we might still need the runtime check. To fix, check if the __SSE_4_2__ preprocessor symbol is defined. That's supposed to be defined only when the compiler is targeting a processor that has SSE 4.2 support. Per buildfarm members fulmar and okapi.
-
由 Heikki Linnakangas 提交于
I already removed support from the backend and from tools in src/bin earlier, but missed these tools in contrib.
-
由 Heikki Linnakangas 提交于
I removed everything else from gpupgrade earlier, but missed this file for reason.
-
由 Heikki Linnakangas 提交于
1. Remove unnecessary ORDER BYs (one of them still needed, as gpdiff.pl got confused by the ORDER BY within subquery, thinking that the order of the overall query was well-ordered). 2. Move GPDB-added test queries to separate test file, union_gp.sql.
-
由 Heikki Linnakangas 提交于
This is part of long-standing effort ot eliminate the separate bugbuster suite.
-
由 Heikki Linnakangas 提交于
There are similar tests in the partition1 test already, so keep them together.
-
由 Heikki Linnakangas 提交于
These exactly same queries from bugbuster 'partition' test were already in the main suite's 'partition' test (and even had some comments there).
-
由 Heikki Linnakangas 提交于
This test takes a very long time, so by splitting it and running other tests in parallel, we can hopefully utilize multiple CPUs better during regression tests, and finish the tests earlier. There's no big principle on where exactly I split this, but I did take care that the new 'partition1' test case doesn't need different expected output files for the ORCA and non-ORCA case. That always makes maintenance easier.
-
由 Heikki Linnakangas 提交于
These tests query pg_locks and fail if there are concurrent transactions holding locks. Isolate them to separate file, so that we can safely run other tests in parallel.
-
由 Jason Champion 提交于
When gethostbyaddr fails in gpssh-exkeys, print the name of the host that failed lookup for easier troubleshooting.
-
由 Kenan Yao 提交于
When the cluster has multiple segments, planner now mistakenly calculates the row number of catalog tables. One example is: SELECT COUNT(*) FROM pg_class may say the table has 200 rows of records, while EXPLAIN SELECT * FROM pg_class would say there are 200 * N rows of records, even if you have already issued ANALYZE upon pg_class and restarted the session(to reload the relation cache), where N is the number of primary segments. Another bug is for query like SELECT * FROM gp_dist_random('pg_class'), in this case, planner should assume the size of pg_class to be 200 * N, instead of the current 200.
-
- 28 11月, 2015 2 次提交
-
-
由 Heikki Linnakangas 提交于
Only minor formatting and comment changes, everything else in this merge commit we had already backported earlier. Conflicts: configure configure.in doc/TODO doc/src/FAQ/TODO.html doc/src/sgml/Makefile doc/src/sgml/installation.sgml doc/src/sgml/ref/initdb.sgml doc/src/sgml/release.sgml src/Makefile.shlib src/backend/executor/execQual.c src/backend/optimizer/path/costsize.c src/backend/optimizer/plan/initsplan.c src/backend/parser/parse_expr.c src/backend/parser/parser.c src/backend/port/Makefile src/backend/utils/adt/float.c src/backend/utils/adt/xml.c src/bin/initdb/initdb.c src/include/utils/xml.h src/interfaces/ecpg/test/expected/compat_informix-charfuncs.c src/interfaces/ecpg/test/expected/compat_informix-dec_test.c src/interfaces/ecpg/test/expected/compat_informix-rfmtdate.c src/interfaces/ecpg/test/expected/compat_informix-rfmtlong.c src/interfaces/ecpg/test/expected/compat_informix-rnull.c src/interfaces/ecpg/test/expected/compat_informix-test_informix.c src/interfaces/ecpg/test/expected/compat_informix-test_informix2.c src/interfaces/ecpg/test/expected/connect-test1.c src/interfaces/ecpg/test/expected/connect-test2.c src/interfaces/ecpg/test/expected/connect-test3.c src/interfaces/ecpg/test/expected/connect-test4.c src/interfaces/ecpg/test/expected/connect-test5.c src/interfaces/ecpg/test/expected/pgtypeslib-dt_test.c src/interfaces/ecpg/test/expected/pgtypeslib-dt_test2.c src/interfaces/ecpg/test/expected/pgtypeslib-num_test.c src/interfaces/ecpg/test/expected/pgtypeslib-num_test2.c src/interfaces/ecpg/test/expected/preproc-comment.c src/interfaces/ecpg/test/expected/preproc-define.c src/interfaces/ecpg/test/expected/preproc-init.c src/interfaces/ecpg/test/expected/preproc-type.c src/interfaces/ecpg/test/expected/preproc-variable.c src/interfaces/ecpg/test/expected/preproc-whenever.c src/interfaces/ecpg/test/expected/sql-array.c src/interfaces/ecpg/test/expected/sql-binary.c src/interfaces/ecpg/test/expected/sql-code100.c src/interfaces/ecpg/test/expected/sql-copystdout.c src/interfaces/ecpg/test/expected/sql-define.c src/interfaces/ecpg/test/expected/sql-desc.c src/interfaces/ecpg/test/expected/sql-dynalloc.c src/interfaces/ecpg/test/expected/sql-dynalloc2.c src/interfaces/ecpg/test/expected/sql-dyntest.c src/interfaces/ecpg/test/expected/sql-execute.c src/interfaces/ecpg/test/expected/sql-fetch.c src/interfaces/ecpg/test/expected/sql-func.c src/interfaces/ecpg/test/expected/sql-indicators.c src/interfaces/ecpg/test/expected/sql-quote.c src/interfaces/ecpg/test/expected/sql-show.c src/interfaces/ecpg/test/expected/thread-thread.c src/interfaces/ecpg/test/expected/thread-thread_implicit.c src/interfaces/libpq/Makefile src/test/regress/expected/xml.out src/test/regress/expected/xml_1.out src/test/regress/sql/xml.sql
-
由 Heikki Linnakangas 提交于
Just the bump in copyright year in this, nothing interesting. And almost every file already carried a higher year already anyway, so I didn't touch those. I did update the PostgreSQL CVS tags where applicable, though, just to reduce the number of merge conflicts in future.
-
- 27 11月, 2015 1 次提交
-
-
由 Heikki Linnakangas 提交于
Noth much interesting here, but I wanted to stop before the next upstream commit, which is a mechanical Copyright year bump. Conflicts: contrib/btree_gist/btree_gist.sql.in doc/FAQ doc/FAQ_DEV doc/FAQ_japanese doc/bug.template doc/src/FAQ/FAQ.html doc/src/FAQ/FAQ_DEV.html doc/src/FAQ/FAQ_japanese.html doc/src/sgml/ref/pg_ctl-ref.sgml doc/src/sgml/ref/postgres-ref.sgml doc/src/sgml/ref/reindex.sgml doc/src/sgml/release.sgml src/backend/access/gin/ginvacuum.c src/backend/access/heap/tuptoaster.c src/backend/main/main.c src/backend/postmaster/postmaster.c src/backend/tcop/postgres.c src/backend/utils/adt/float.c src/backend/utils/adt/regexp.c src/bin/pg_ctl/pg_ctl.c src/bin/pg_dump/dumputils.c src/include/catalog/pg_type.h src/include/pg_config.h.win32 src/include/utils/builtins.h src/interfaces/ecpg/compatlib/Makefile src/interfaces/ecpg/ecpglib/Makefile src/interfaces/ecpg/pgtypeslib/Makefile src/interfaces/ecpg/preproc/Makefile src/interfaces/libpq/Makefile src/interfaces/libpq/libpq.rc.in src/port/win32ver.rc src/test/regress/pg_regress.c src/tools/RELEASE_CHANGES src/tools/copyright src/tools/msvc/Project.pm
-
- 26 11月, 2015 6 次提交
-
-
由 Heikki Linnakangas 提交于
This batch includes: * A series of tweaks to handling float corner case. Our code is now roughly the same as upstream tip of 8.3 stable branch. As part of this merge, I reverted some unnecessary changes to the float regression test, so that it now closely matches upstream too. * Widen money datatype to 64 bits. Not that exciting, but noteworthy because that changes the on-disk format, and would need to be dealt with if we tried to implement in-place upgrade crossing this commit. (There are more such changes upcoming from PostgreSQL 8.3, but this is the first) * Changes to the API of smgr.c and md.c. The big change is that mdread() on a block beoynd EOF no longer extends the file with zeros, but throws an error. A couple of places had to be tweaked for that. Also, I started getting errors from that from a TID scan test case in portals_updatable test case. If a table was partitioned, and the current TID was pointing e.g. to block 10, we would try to fetch block 10 on all partitions, not only the partition the current row came from. That now lead to an ERROR in mdread(). I suspect this has been wrong all along, but no-one's noticed. Conflicts: configure src/backend/access/hash/hashpage.c src/backend/access/nbtree/nbtsort.c src/backend/commands/tablecmds.c src/backend/storage/smgr/md.c src/backend/storage/smgr/smgr.c src/backend/utils/adt/float.c src/backend/utils/adt/int.c src/backend/utils/adt/network.c src/include/catalog/catversion.h src/include/catalog/pg_type.h src/include/port/win32.h src/include/storage/smgr.h src/test/regress/expected/float4.out src/test/regress/expected/float8.out src/test/regress/expected/rules.out
-
由 Heikki Linnakangas 提交于
Move a comment outside local block, so that the indentation matches upstream. Remove some unnecessary #includes.
-
由 Heikki Linnakangas 提交于
This batch includes a bunch of misc fixes, but the most notable change is the support for type modifiers of user-defined types. There were also a bunch of XML-type related fixes, but most of those were not applicable (i.e. had them already), as I backported the 9.1 XML implementation in toto already. Conflicts: contrib/pgbench/pgbench.c contrib/tsearch2/dict_thesaurus.c doc/TODO doc/src/FAQ/TODO.html doc/src/sgml/catalogs.sgml doc/src/sgml/ddl.sgml doc/src/sgml/errcodes.sgml doc/src/sgml/installation.sgml doc/src/sgml/keywords.sgml doc/src/sgml/maintenance.sgml doc/src/sgml/plpgsql.sgml doc/src/sgml/ref/create_type.sgml doc/src/sgml/ref/vacuum.sgml doc/src/sgml/rules.sgml src/backend/access/common/tupdesc.c src/backend/access/nbtree/README src/backend/access/nbtree/nbtutils.c src/backend/commands/tablecmds.c src/backend/commands/typecmds.c src/backend/executor/execMain.c src/backend/executor/execQual.c src/backend/executor/execUtils.c src/backend/executor/nodeBitmapHeapscan.c src/backend/executor/nodeFunctionscan.c src/backend/executor/nodeIndexscan.c src/backend/executor/nodeResult.c src/backend/executor/nodeSeqscan.c src/backend/executor/nodeSubplan.c src/backend/executor/nodeSubqueryscan.c src/backend/executor/nodeTidscan.c src/backend/executor/nodeValuesscan.c src/backend/executor/spi.c src/backend/nodes/copyfuncs.c src/backend/nodes/equalfuncs.c src/backend/nodes/makefuncs.c src/backend/nodes/outfuncs.c src/backend/nodes/readfuncs.c src/backend/optimizer/util/clauses.c src/backend/parser/gram.y src/backend/parser/keywords.c src/backend/parser/parse_coerce.c src/backend/parser/parse_expr.c src/backend/parser/parse_relation.c src/backend/parser/parse_target.c src/backend/parser/parse_type.c src/backend/storage/buffer/localbuf.c src/backend/utils/adt/arrayutils.c src/backend/utils/adt/date.c src/backend/utils/adt/float.c src/backend/utils/adt/format_type.c src/backend/utils/adt/ruleutils.c src/backend/utils/adt/timestamp.c src/backend/utils/adt/varbit.c src/backend/utils/adt/varchar.c src/backend/utils/adt/xml.c src/backend/utils/cache/lsyscache.c src/backend/utils/cache/relcache.c src/backend/utils/mb/mbutils.c src/backend/utils/misc/guc.c src/backend/utils/mmgr/aset.c src/bin/pg_dump/pg_dump.c src/bin/psql/command.c src/bin/psql/input.c src/bin/psql/mbprint.c src/include/catalog/catversion.h src/include/catalog/pg_class.h src/include/catalog/pg_proc.h src/include/catalog/pg_type.h src/include/mb/pg_wchar.h src/include/nodes/nodes.h src/include/nodes/parsenodes.h src/include/nodes/primnodes.h src/include/parser/parse_coerce.h src/include/parser/parse_type.h src/include/utils/array.h src/include/utils/builtins.h src/include/utils/timestamp.h src/include/utils/varbit.h src/include/utils/xml.h src/interfaces/libpq/Makefile src/pl/plpgsql/src/pl_exec.c src/test/regress/expected/create_type.out src/test/regress/expected/horology.out src/test/regress/expected/opr_sanity.out src/test/regress/expected/xml.out src/test/regress/expected/xml_1.out src/test/regress/sql/create_type.sql src/test/regress/sql/opr_sanity.sql src/tools/findoidjoins/README src/tools/msvc/Solution.pm src/tools/pgindent/pgindent
-
由 Nikos Armenatzoglou 提交于
Fix: Immutable function mregr_coef returns different results
-
由 Nikos Armenatzoglou 提交于
The immutable function was returning different values, because it was allocating memory and using a table whose entries may have a garbage initial value. The fix initiates the entries of the table to zero.
-
由 Jimmy Yih 提交于
In the gpmgmt1 bugbuster test, the gpstate -f line makes a connection to the template1 database which can cause the other tests in gpmgmt1's parallel test group to fail. An example of this is when metadata_track tries to create databases and fails as template1 is being accessed. gpstate -f in gpmgmt1 bugbuster test has been removed.
-
- 25 11月, 2015 3 次提交
-
-
由 Chumki Roy 提交于
-
由 Jamie McAtamney 提交于
The gpdbrestore -G flag has been modified from a boolean flag to one that accepts an optional argument. Passing it the argument "include" will carry out the old -G functionality, restoring global objects in addition to performing a normal restore; passing it no argument will do the same, to retain backwards compatibility. Passing it the argument "only" will restore global objects but will not restore anything else. Authors: James McAtamney and Jimmy Yih
-
由 Chumki Roy 提交于
Currently gpdbrestore does not allow tables to be restored from one schema to another. Eg: testschema.testtable => anotherschema.testtable
-