Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .github/workflows/installcheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: PG12 Regression

on:
push:
branches: [ '*' ]
pull_request:
branches: [ '*' ]

jobs:
build:

runs-on: ubuntu-latest

steps:
- name: Get latest commit id of PostgreSQL 12
run: |
echo "PG_COMMIT_HASH=$(git ls-remote git://git.postgresql.org/git/postgresql.git refs/heads/REL_12_STABLE | awk '{print $1}')" >> $GITHUB_ENV

- name: Cache PostgreSQL 12
uses: actions/cache@v2
id: pg12cache
with:
path: ~/pg12
key: ${{ runner.os }}-v1-pg12-${{ env.PG_COMMIT_HASH }}

- name: Install PostgreSQL 12
if: steps.pg12cache.outputs.cache-hit != 'true'
run: |
git clone --depth 1 --branch REL_12_STABLE git://git.postgresql.org/git/postgresql.git ~/pg12source
cd ~/pg12source
./configure --prefix=$HOME/pg12 CFLAGS="-std=gnu99 -ggdb -O0" --enable-cassert
make install -j$(nproc) > /dev/null

- uses: actions/checkout@v2
- name: Regression
run: |
export PG_CONFIG=$HOME/pg12/bin/pg_config
make -j$(nproc)
make install
make installcheck

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Every file need to have one blank like at the end.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, if we follow all PostgreSQL coding rules, it will be easy to run pgident and merge. All of the extensions are doing that. But it's my experience and opinion.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But, this means all of PGs coding rules, correct? Including their indentations and use of tabs? We left all that behind at the start of the project.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't worry, we will fix them one by one afterwards, for indentation, I will run pgident that fixes space and indentation issues.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What indentation issues? Our coding standard is to use 4 spaces (not a tab) for indentation. Please do not automatically run anything that will reformat files in the AGE repo. Changes like this need to be reviewed by the group before any action is taken.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, @jrgemignani, that is what we already decided, and I don't want to run any tool without a final agreement. My point is our code is based on PostgreSQL, and for PostgreSQL, even we have copied most of the code from PostgreSQL code. We should make some progress to match PostgreSQL coding guidelines. Not now, but start thinking over that. It will ease our job of the future merging of code, and we can also use PostgreSQL indentation tools in future.

1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
*.o
*.so
.gitignore
build.sh
.idea
.deps
Expand Down
6 changes: 3 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ dist: bionic
arch: amd64
jobs:
include:
- name: PostgreSQL 11
- name: PostgreSQL 12
compiler: gcc
addons:
apt:
packages:
- postgresql-11
- postgresql-server-dev-11
- postgresql-12
- postgresql-server-dev-12
script:
- sudo make install -j$(nproc)
- make installcheck
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@
#


FROM postgres:11
FROM postgres:12

RUN apt-get update
RUN apt-get install --assume-yes --no-install-recommends --no-install-suggests \
bison \
build-essential \
flex \
postgresql-server-dev-11
postgresql-server-dev-12

COPY . /age
RUN cd /age && make install
Expand Down
14 changes: 11 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ OBJS = src/backend/age.o \

EXTENSION = age

DATA = age--1.0.0.sql
DATA = age--1.1.0.sql

# sorted in dependency order
REGRESS = scan \
Expand Down Expand Up @@ -99,15 +99,23 @@ ag_regress_dir = $(srcdir)/regress
REGRESS_OPTS = --load-extension=age --inputdir=$(ag_regress_dir) --outputdir=$(ag_regress_dir) --temp-instance=$(ag_regress_dir)/instance --port=61958 --encoding=UTF-8

ag_regress_out = instance/ log/ results/ regression.*
EXTRA_CLEAN = $(addprefix $(ag_regress_dir)/, $(ag_regress_out)) src/backend/parser/cypher_gram.c src/include/parser/cypher_gram_def.h
EXTRA_CLEAN = $(addprefix $(ag_regress_dir)/, $(ag_regress_out)) src/backend/parser/cypher_gram.c src/include/parser/cypher_gram_def.h src/include/parser/cypher_kwlist_d.h

GEN_KEYWORDLIST = $(PERL) -I ./tools/ ./tools/gen_keywordlist.pl
GEN_KEYWORDLIST_DEPS = ./tools/gen_keywordlist.pl tools/PerfectHash.pm

ag_include_dir = $(srcdir)/src/include
PG_CPPFLAGS = -I$(ag_include_dir) -I$(ag_include_dir)/parser

PG_CONFIG = pg_config
PG_CONFIG ?= pg_config
PGXS := $(shell $(PG_CONFIG) --pgxs)
include $(PGXS)

src/backend/parser/cypher_keywords.o: src/include/parser/cypher_kwlist_d.h

src/include/parser/cypher_kwlist_d.h: src/include/parser/cypher_kwlist.h $(GEN_KEYWORDLIST_DEPS)
$(GEN_KEYWORDLIST) --extern --varname CypherKeyword --output src/include/parser $<

src/include/parser/cypher_gram_def.h: src/backend/parser/cypher_gram.c

src/backend/parser/cypher_gram.c: BISONFLAGS += --defines=src/include/parser/cypher_gram_def.h
Expand Down
2 changes: 1 addition & 1 deletion NOTICE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Apache AGE (incubating)
Apache AGE
Copyright 2022 The Apache Software Foundation.
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Intelligent -- AGE allows you to perform graph queries that are the basis for ma

## Latest happenings

- Latest Apache AGE release, [Apache AGE 1.0.0 (https://github.com/apache/age/releases/tag/v1.0.0-rc1).
- Latest Apache AGE release, [Apache AGE 1.0.0 (https://github.com/apache/age/releases/tag/v1.1.0-rc1).
- The latest Apache AGE documentation is now available at [here](https://age.apache.org/docs/master/index.html).
- The roadmap has been updated, please check out the [Apache AGE website](http://age.apache.org/).
- Send all your comments and inquiries to the user mailing list, users@age.apache.org.
Expand Down
40 changes: 23 additions & 17 deletions RELEASE
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,28 @@
# specific language governing permissions and limitations
# under the License.

Release Notes for Apache AGE release v1.0.0
Release Notes for Apache AGE release v1.1.0

Apache AGE 1.0.0 - Release Notes
Apache AGE 1.1.0 - Release Notes

Support for Agtype containment ops and GIN Indices.
Add CALL [YIELD] grammar rules for the implementation of CALL procedures.
VLE path variable integration performance patch.
Improve WHERE clause performance and support index scans.
Allow global graph contexts to see currentCommandIds.
Cache Agtype and GRAPHID OIDs.
Allow lists and maps to be used in the SET clause.
Fix bug in aggregate function collect().
Fix Bug in WHERE clause and property constraints.
Fix VLE local cache bug (crash).
Fix bug where integers were not being serialized correctly when stored in GIN indices.
Fix the VLE peek_stack_head routine to return a NULL if the stack is NULL.
Fix MERGE visibility in chained commands, SET specifically.
Fix github issue #212 - Add access operator (`->`, `->>`) to Agtype.
Fix github issue #220 - fix local cached contexts for static procedures.
Fix github issue #224 - fix regression tests to fix issues on mac with trigonometric functions.
Fix github issue #235 - when MERGE and SET were used together.
Fix github issue #240 - negative array bounds.
Fix github issue #240 - negative array bounds - addendum.
Updated README.

Add an upgrading SQL script file from 0.5.0 to 0.6.0
Add upgrading file age--0.6.0--0.7.0.sql
Refactor function get_agtype_value_object_value
Age load issue (#188)
Refactor agtype_access_operator
Bugfix - Remove INLINE from function declaration
Rebase VLE code
Implement Merge Clause
Bugfix: chained union logic
Allow a path of one vertex
Created functions for load graph from CSV files
Add UNION into EXPLAIN grammar rule
Implement `UNWIND` clause(#173)
Bugfix:(nodejs) Corrects parsing for independence value(#177)
Feat: Implement `OPTIONAL MATCH` (#175)
34 changes: 0 additions & 34 deletions age--0.5.0--0.6.0.sql

This file was deleted.

Loading