- 18 1月, 2018 11 次提交
-
-
由 Jesse Zhang 提交于
This patch removes codegen wholesale from Greenplum. In addition to reverting the commits involving codegen, we also removed miscellaneous references to the feature and GUC. The following commits from 5.0.0 were reverted (topologically ordered): f38c9064 Support avg aggregate function in codegen 87dcae4c Capture and print error messages from llvm::verifyFunction 65137540 libgpcodegen assert() overrides use GPDB Assert() 81d378b4 GenerateExecVariableList calls regular slot_getattr when the code generation of the latter fails 05a28211 Update Google Test source path used by codegen 22a35fcc Call ereport when code generating float operators 79517271 Support overflow checks for doubles. b5373a1e Fix codegen unittest link problem 7a1a98c9 Print filename and lineno in codegened CreateElog 58eda293 Fix wrong virtual tuple check in codegened slot_getattr bc6faa08 Set llvm_isNull_ptr to false when the result of codegened expression evaluation is not null 8bbbd63f Enhance codegened advance_aggregates with support for null attributes e1fd6072 Abort code generation of expression evaluation trees with unsupported ExprState types 509460ee Support null attributes in codegen expression evaluation framework 739d978d Move enrollment of codegened ExecVariableList to ExecInitNode c05528d1 Fix CHECK_SYMBOL_DEFINED macro in CMakeLists.txt 12cfd7bd Support offset calculation when there is null in the tuple and codegen is enabled 40a2631e Use slot_getattr wrapper function for regular version.(#1194) 613e9fbb Revert "Fix codegen issue by moving slot_getattr to heaptuple.c similar to" ee03f799 Fix cpplint error on advance aggregate 2a65b0aa Fix slot function nullptr issue in expr eval. 3107fc0e Fix for !(expr1 & expr2) and hasnull logic in slot_getatrr codegen. c940c7f6 Fix codegen issue by moving slot_getattr to heaptuple.c similar to Postgres. c8125736 Introduce guc to enable/disable all generator. a4f39507 Ensure that codegen unittests pass with GCC 6.2.0 (#1177) 682d0b28 Allow overriding assert() functionality in libgpcodegen in DEBUG mode 3209258a Organize codegen source files and unit tests d2ba88a9 Fix codegen unittests using DatumCastGenerator 020b71a5 Generate code for COUNT aggregate function 0eeec886 Fixing codegen related bugs in InitializeSupportedFunction 41055352 Rewrite PGGenericFuncGenerator to support variable number of types e5318b6b Add AdvanceAggregatesCodegenEnroll mock function 87521715 Codegen advance_aggregates for SUM transition function 2043d95b Use string messages in codegened slot_getattr fallback block f160fa5a Add new GUC to control Codegen Optimization level. 697ffc1a Fix cpplint errors c5e3aed4 Support Virtual Tuples and Memtuples in SlotGetAttrCodegen 5996aaa7 Keep a reference to the CodegenManager in code generators 6833b3c2 Remove unused header and just include what you use in codegen ab1eda87 Allow setting codegen guc to ON only if code generation is supported by the build dcd40712 Use PGFuncGeneratorInfo to codegen pg functions 83869d1c Replace dynamic_cast with dyn_cast for llvm objects 23007017 Decide what to generate for ExecEvalExpr based on PlanState 387d8ce8 Add EXPLAIN CODEGEN to print generated IR to the client c4a9bd27 Introduce Datum to cpp cast, cpp type to Datum cast and normal cast.(#944) 66158dfd Record external function names for useful debugging adab9120 Support variable length attributes in SlotGetAttrCodegen. 335e09aa Proclaim that the codegen'ed version of generated functions are called in debug build 50fd9140 Fix cpplint errors 88a04412 Use ExprTreeGeneratorInfo for expression tree generation. 3b4af3bb Split code generation of ExecVariableList from slot_getattr 8cd9ed9f Support <= operator for date/timestamp data types and some minor refactors. e4dccf46 Implement InlineFunction to force inline at call site 71170942 Mock postmaster.o for codegen_framework_unittest.t 09f00581 Codegen expressions that contain plus, minus and mul operators on float8 data types d7fb2f6d Fix codegen unittests on Linux and various compiler warnings while building codegen. 45f2aa96 Fix test and update coding style This closes #874 1b26fbfc Enrolled targetlist for scan and aggregate ebd1d014 Enhance codegen framework to support arbitrary expr tree ec626ce6 Generate and enroll naive ExecEvalExpr in Scan's quals 1186001e Revert "Create naive code-generated version of ExecQual" 6f928a65 Replace RegisterExternalFunction with GetOrRegisterExternalFunction using an unordered_map in codegen_utils 6ae0085b Move ElogWrapper to GpCodegenUtils. d3f80b45 Add verifyfunction for generated llvm function. 7bcf094a Fix codegen compiler error with 8.3 merge aae0ad3d Create naive code-generated version of ExecQual dce266ad Minor code quality fixes in src/backend/codegen d281f340 Support null attributes in code generated ExecVariableList 82fd418e Address a number of cpplint errors in codegen_utils_unittest.cc 887aa48d Add check for CodegenUtils::GetType for bool arrays bb9b92c6 Enhance Base Codegen to do clean up when generation fails b9ef5e3f Fix build error for Annotated types a5cfefd9 Add support for array types in codegen_utils. 2b883384 Fix static_assert call 7b75d9ea This commit generates code for code path: ExecVariableList > slot_getattr > _slot_getsomeattrs > slot_deform_tuple. This code path is executed during scan in simple select queries that do not have a where clause (e.g., select bar from foo;). 6d0a06e8 Fix CodeGen typos and CodeGeneratorManagerCreate function signature in gpcodegen_mock.c 4916a606 Add support for registering vararg external functions with codegen utils. ae4a7754 Integrate codegen framework and make simple external call to slot deform tuple. This closes #649 ee5fb851 Renaming code_generator to codegen_utils and CodeGenerator to CodegenUtils. This closes #648 88e9baba Adding GPDB code generation utils Signed-off-by: NJesse Zhang <sbjesse@gmail.com> Signed-off-by: NMelanie Plageman <mplageman@pivotal.io> Signed-off-by: NSambitesh Dash <sdash@pivotal.io>
-
由 Heikki Linnakangas 提交于
These were added in GPDB to encapsulate RelFileNode and persistent table information. But persistent tables are no more, so there is no reason to differ from upstream.
-
由 Heikki Linnakangas 提交于
-
由 Heikki Linnakangas 提交于
-
由 Heikki Linnakangas 提交于
To reduce merge conflicts as we start to merge with upstream again.
-
由 Heikki Linnakangas 提交于
Also add some comments, based on the descriptions of the original bugs that were fixed.
-
由 Heikki Linnakangas 提交于
-
由 Heikki Linnakangas 提交于
-
由 Heikki Linnakangas 提交于
These are no longer used for anything.
-
由 Heikki Linnakangas 提交于
-
由 Daniel Gustafsson 提交于
With persistent tables removed there are no more consumers of this API, so remove it.
-
- 17 1月, 2018 17 次提交
-
-
由 Heikki Linnakangas 提交于
-
由 Heikki Linnakangas 提交于
The change in index.c is a behavioral change. The behavior on reindexing shared catalogs now matches upstream again. The rest is just removal of dead code.
-
由 Heikki Linnakangas 提交于
This test file is currently unused altogether. That's another issue we should do something about, but let's at least remove these clearly obsolete queries from it.
-
由 Heikki Linnakangas 提交于
-
由 Daniel Gustafsson 提交于
-
由 Heikki Linnakangas 提交于
These changes were made obsolete by the removal of all the cdbdump code (commit 8922315e).
-
由 Heikki Linnakangas 提交于
A long time ago, they were disabled, because the GIN code had not been modified to work with file replication. Now with WAL replication, there's no reason to not support them.
-
由 Xiaoran Wang 提交于
After finding a match in semijoin mode, arrange to advance to the next outer tuple not next inner tuple after returning the current match. The node->mj_MatchedOuter is always false here, there is no need to check it. Author: Max Yang <myang@pivotal.io>
-
由 Ashwin Agrawal 提交于
-
由 Ashwin Agrawal 提交于
-
由 Ashwin Agrawal 提交于
-
由 Ashwin Agrawal 提交于
-
由 Daniel Gustafsson 提交于
contrib/bufferedtest depends on LZJB code which was removed long before the open sourcing of Greenplum, and contrib/varblocktest hasn't built in a long time due to the Makefile being wonky. Since noone has missed these tools, remove them rather than keeping dead code around.
-
由 Heikki Linnakangas 提交于
They were not testing anything interesting anymore. Per discussion on gpdb-dev mailing list. Discussion: https://groups.google.com/a/greenplum.org/d/msg/gpdb-dev/gq07ixYkTqk/ehLfByeIAAAJ
-
由 Heikki Linnakangas 提交于
In the first cut of the walreplication work, I left out the part that drops a segfile during AO compaction, because there was no straightforward native PostgreSQL function to drop just a single segfile. However, that leads to a massive disk space leak, as the space freed by VACUUM on an AO table is not reclaimed, until the same segment number is used again for further insertions, so we clearly must do something about that. Instead of dropping the segfile altogether, like we used to, truncate the file to 0 bytes. Mostly because that's more expedient to do, as we have the functions to do that and to WAL-log that, whereas code to fully remove just a single segfile doesn't exist. But if you squint a bit, you could even call that an optimization: it saves the overhead of recreating the file again, if you load more data to it later.
-
由 Heikki Linnakangas 提交于
Pointed out by Coverity.
-
由 Heikki Linnakangas 提交于
As Coverity pointed out, 'pelem' has already been dereferenced in the function, and hence it can never be NULL here. And indeed it should never be NULL. With 'prule', we explicitly checked for NULL earlier in the function.
-
- 16 1月, 2018 6 次提交
-
-
由 Daniel Gustafsson 提交于
-
由 Ashwin Agrawal 提交于
This test keeps failing in CI intermittently, needs to be looked into as seems hitting the assertion currently "Unexpected internal error (postmaster.c:5328)","FailedAssertion(""!(CountChildren(0x0001|0x0002) == 0)"", File: ""postmaster.c"", Line: 5328)" Once postmaster cleanup PR is done will revisit the test.
-
由 Daniel Gustafsson 提交于
The IDENTIFICATION stanza in the source files is of questionable usefulness, but unexpanded CVS keywords that never existed in the codebase where the expansion happened are even less useful. Replace with the filepath to make these headers consistent with upstream.
-
由 Amos Bird 提交于
-
由 Haozhou Wang 提交于
A PL/JAVA NULL point reference has been reported by coverity scan. The issue is located in guc.c for a pljava guc option "pljava_classpath_insecure" and fixed in this commit.
-
由 Xiaoran Wang 提交于
tuple store which just advances current position by N instead of getting tuple N times. Author: Max Yang <myang@pivotal.io>
-
- 15 1月, 2018 5 次提交
-
-
由 Daniel Gustafsson 提交于
Since ICW is a very longrunning process, attempt to reduce time consumption by reducing overhead during testing while keeping the test constant (coverage not reduced). Avoid dropping/recreating underlying test tables when not required, reduce the number of partitions in some cases and skip pointless drops for objects we know doesn't exist. In total this shaves about 30-40 seconds off an ICW run on my local machine, mileage may vary.
-
由 Daniel Gustafsson 提交于
Make sure that we are able to exchnage in an external partition, and also ensure that truncation doesn't recurse into the ext partition.
-
由 Daniel Gustafsson 提交于
This backports the below commit which moved from the source timezone file to the newly introduced compact format. commit 097b24cea68ac167a82bb617eb1844c8be4eaf24 Author: Tom Lane <tgl@sss.pgh.pa.us> Date: Sat Nov 25 15:30:11 2017 -0500 Replace raw timezone source data with IANA's new compact format. Traditionally IANA has distributed their timezone data in pure source form, replete with extensive historical comments. As of release 2017c, they've added a compact single-file format that omits comments and abbreviates command keywords. This form is way shorter than the pure source, even before considering its allegedly better compressibility. Hence, let's distribute the data in that form rather than pure source. I'm pushing this now, rather than at the next timezone database update, so that it's easy to confirm that this data file produces compiled zic output that's identical to what we were getting before. Discussion: https://postgr.es/m/1915.1511210334@sss.pgh.pa.us
-
由 Daniel Gustafsson 提交于
The timezone data in Greenplum are from the base version of PostgreSQL that the current version of Greenplum is based on. This cause issues since it means we are years behind on tz changes that have happened. This pulls in the timezone data and code from PostgreSQL 10.1 with as few changes to Greenplum as possible to minimize merge conflicts. The goal is to gain data rather than features, and for Greenplum for each release to be able to stay current with the iana tz database as it is imported into upstream PostgreSQL. This removes a Greenplum specific test for the Yakutsk timezone as it was made obsolete by upstream tz commit 1ac038c2c3f25f72.
-
由 Jacob Champion 提交于
pg_ctl and gpstart appear to be running simultaneously, because we're not waiting for pg_ctl to finish before moving to the next call. (subprocess.Popen() doesn't return the process's return code -- it returns a Popen instance.) cs_walrep_2 in the master pipeline is currently failing roughly 50% of the time due to a crash during test_negative. Let's see if this helps at all.
-
- 13 1月, 2018 1 次提交
-
-
由 Ashwin Agrawal 提交于
-