Changed product name to citus

All citusdb references in
- extension, binary names
- file headers
- all configuration name prefixes
- error/warning messages
- some functions names
- regression tests

are changed to be citus.
pull/337/head
Murat Tuncer 2016-02-15 16:04:31 +02:00
parent 334f800016
commit 55c44b48dd
151 changed files with 529 additions and 529 deletions

View File

@ -1,11 +1,11 @@
# CitusDB toplevel Makefile
# Citus toplevel Makefile
citusdb_subdir = .
citusdb_top_builddir = .
citus_subdir = .
citus_top_builddir = .
# Hint that configure should be run first
ifeq (,$(wildcard Makefile.global))
$(error ./configure needs to be run before compiling CitusDB)
$(error ./configure needs to be run before compiling Citus)
endif
include Makefile.global
@ -20,9 +20,9 @@ install-extension:
install-headers:
$(MKDIR_P) '$(includedir_server)/distributed/'
# generated headers are located in the build directory
$(INSTALL_DATA) src/include/citusdb_config.h '$(includedir_server)/'
$(INSTALL_DATA) src/include/citus_config.h '$(includedir_server)/'
# the rest in the source tree
$(INSTALL_DATA) $(citusdb_abs_srcdir)/src/include/distributed/*.h '$(includedir_server)/distributed/'
$(INSTALL_DATA) $(citus_abs_srcdir)/src/include/distributed/*.h '$(includedir_server)/distributed/'
clean-extension:
$(MAKE) -C src/backend/distributed/ clean
.PHONY: extension install-extension clean-extension

View File

@ -9,40 +9,40 @@
# makefiles, particulary central handling of compilation flags and
# rules.
citusdb_abs_srcdir:=@abs_top_srcdir@/${citusdb_subdir}
citusdb_abs_top_srcdir:=@abs_top_srcdir@
citus_abs_srcdir:=@abs_top_srcdir@/${citus_subdir}
citus_abs_top_srcdir:=@abs_top_srcdir@
PG_CONFIG:=@PG_CONFIG@
PGXS:=$(shell $(PG_CONFIG) --pgxs)
# Support for VPATH builds (i.e. builds from outside the source tree)
vpath_build=@vpath_build@
ifeq ($(vpath_build),yes)
VPATH:=$(citusdb_abs_srcdir)
VPATH:=$(citus_abs_srcdir)
USE_VPATH:=$(VPATH)
endif
# CitusDB is built using PostgreSQL's pgxs
# Citus is built using PostgreSQL's pgxs
USE_PGXS=1
include $(PGXS)
# Remake Makefile.global from Makefile.global.in if the latter
# changed. In order to trigger this rule, the including file must
# write `include $(citusdb_top_builddir)/Makefile.global', not some
# write `include $(citus_top_builddir)/Makefile.global', not some
# shortcut thereof. This makes it less likely to accidentally run
# with some outdated Makefile.global.
# Make internally restarts whenever included Makefiles are
# regenerated.
$(citusdb_top_builddir)/Makefile.global: $(citusdb_top_builddir)/Makefile.global.in @top_srcdir@/configure $(citusdb_top_builddir)/config.status
$(citus_top_builddir)/Makefile.global: $(citus_top_builddir)/Makefile.global.in @top_srcdir@/configure $(citus_top_builddir)/config.status
cd @abs_top_builddir@ && ./config.status Makefile.global
# Ensure configuration is generated by the most recent configure,
# useful for longer existing build directories.
$(citusdb_top_builddir)/config.status: @top_srcdir@/configure
$(citus_top_builddir)/config.status: @top_srcdir@/configure
cd @abs_top_builddir@ && ./config.status --recheck
# Regenerate configure if configure.in changed
@top_srcdir@/configure: $(citusdb_abs_srcdir)/configure.in
cd ${citusdb_abs_srcdir} && ./autogen.sh
@top_srcdir@/configure: $(citus_abs_srcdir)/configure.in
cd ${citus_abs_srcdir} && ./autogen.sh
# If specified via configure, replace the default compiler. Normally
# we'll build with the one postgres was built with. But it's useful to
@ -54,8 +54,8 @@ endif
# Add options passed to configure or computed therein, to CFLAGS/CPPFLAGS/...
override CFLAGS += @CFLAGS@ @CITUS_CFLAGS@
override CPPFLAGS := @CPPFLAGS@ -I '${citusdb_abs_top_srcdir}/src/include' $(CPPFLAGS)
override CPPFLAGS := @CPPFLAGS@ -I '${citus_abs_top_srcdir}/src/include' $(CPPFLAGS)
override LDFLAGS += @LDFLAGS@
# optional file with user defined, additional, rules
-include ${citusdb_abs_srcdir}/src/Makefile.custom
-include ${citus_abs_srcdir}/src/Makefile.custom

View File

@ -1,7 +1,7 @@
#!/bin/bash
#
# autogen.sh converts configure.in to configure and creates
# citusdb_config.h.in. The resuting resulting files are checked into
# citus_config.h.in. The resuting resulting files are checked into
# the SCM, to avoid everyone needing autoconf installed.
autoreconf -f

28
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for CitusDB 5.0.
# Generated by GNU Autoconf 2.69 for Citus 5.0.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@ -577,10 +577,10 @@ MFLAGS=
MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='CitusDB'
PACKAGE_TARNAME='citusdb'
PACKAGE_NAME='Citus'
PACKAGE_TARNAME='citus'
PACKAGE_VERSION='5.0'
PACKAGE_STRING='CitusDB 5.0'
PACKAGE_STRING='Citus 5.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@ -1190,7 +1190,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures CitusDB 5.0 to adapt to many kinds of systems.
\`configure' configures Citus 5.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1238,7 +1238,7 @@ Fine tuning of the installation directories:
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
--docdir=DIR documentation root [DATAROOTDIR/doc/citusdb]
--docdir=DIR documentation root [DATAROOTDIR/doc/citus]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
@ -1251,7 +1251,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of CitusDB 5.0:";;
short | recursive ) echo "Configuration of Citus 5.0:";;
esac
cat <<\_ACEOF
@ -1333,7 +1333,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
CitusDB configure 5.0
Citus configure 5.0
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@ -1390,7 +1390,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by CitusDB $as_me 5.0, which was
It was created by Citus $as_me 5.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@ -1871,7 +1871,7 @@ if test -z "$version_num"; then
fi
if test "$version_num" != '9.4' -a "$version_num" != '9.5'; then
as_fn_error $? "CitusDB is not compatible with the detected PostgreSQL version ${version_num}." "$LINENO" 5
as_fn_error $? "Citus is not compatible with the detected PostgreSQL version ${version_num}." "$LINENO" 5
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: building against PostgreSQL $version_num" >&5
$as_echo "$as_me: building against PostgreSQL $version_num" >&6;}
@ -2893,7 +2893,7 @@ CITUS_CFLAGS="$CITUS_CFLAGS"
ac_config_files="$ac_config_files Makefile.global"
ac_config_headers="$ac_config_headers src/include/citusdb_config.h"
ac_config_headers="$ac_config_headers src/include/citus_config.h"
cat >confcache <<\_ACEOF
@ -3402,7 +3402,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by CitusDB $as_me 5.0, which was
This file was extended by Citus $as_me 5.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -3464,7 +3464,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
CitusDB config.status 5.0
Citus config.status 5.0
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@ -3586,7 +3586,7 @@ for ac_config_target in $ac_config_targets
do
case $ac_config_target in
"Makefile.global") CONFIG_FILES="$CONFIG_FILES Makefile.global" ;;
"src/include/citusdb_config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/include/citusdb_config.h" ;;
"src/include/citus_config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/include/citus_config.h" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac

View File

@ -1,11 +1,11 @@
# CitusDB autoconf input script.
# Citus autoconf input script.
#
# Converted into an actual configure script by autogen.sh. This
# conversion only has to be done when configure.in changes. To avoid
# everyone needing autoconf installed, the resulting files are checked
# into the SCM.
AC_INIT([CitusDB], [5.0], [], [citusdb], [])
AC_INIT([Citus], [5.0], [], [citus], [])
AC_COPYRIGHT([Copyright (c) Copyright (c) 2012-2015, Citus Data, Inc.])
AC_PROG_SED
@ -32,7 +32,7 @@ if test -z "$version_num"; then
fi
if test "$version_num" != '9.4' -a "$version_num" != '9.5'; then
AC_MSG_ERROR([CitusDB is not compatible with the detected PostgreSQL version ${version_num}.])
AC_MSG_ERROR([Citus is not compatible with the detected PostgreSQL version ${version_num}.])
else
AC_MSG_NOTICE([building against PostgreSQL $version_num])
fi;
@ -96,11 +96,11 @@ CITUSAC_PROG_CC_CFLAGS_OPT([-Wmissing-prototypes])
AC_SUBST(CITUS_CFLAGS, "$CITUS_CFLAGS")
AC_CONFIG_FILES([Makefile.global])
AC_CONFIG_HEADERS([src/include/citusdb_config.h])
AC_CONFIG_HEADERS([src/include/citus_config.h])
AH_TOP([
/*
* citusdb_config.h.in is generated by autoconf/autoheader and
* converted into citusdb_config.h by configure. Include when code needs to
* citus_config.h.in is generated by autoconf/autoheader and
* converted into citus_config.h by configure. Include when code needs to
* depend on determinations made by configure.
*
* Do not manually edit!

View File

@ -1,8 +1,8 @@
#! /bin/sh
#
# CitusDB copy of PostgreSQL's config/prep_buildtree
# Citus copy of PostgreSQL's config/prep_buildtree
#
# This script prepares a CitusDB build tree for an out-of-tree/VPATH
# This script prepares a Citus build tree for an out-of-tree/VPATH
# build. It is intended to be run by the configure script.
me=`basename $0`

View File

@ -10,4 +10,4 @@
/tmp_check*
# ignore latest install file
citusdb--5.0.sql
citus--5.0.sql

View File

@ -1,13 +1,13 @@
# Makefile for the CitusDB extension
# Makefile for the Citus extension
citusdb_subdir = src/backend/distributed
citusdb_top_builddir = ../../..
citus_subdir = src/backend/distributed
citus_top_builddir = ../../..
MODULE_big = citusdb
EXTENSION = citusdb
MODULE_big = citus
EXTENSION = citus
EXTVERSION = 5.0
DATA_built = $(EXTENSION)--$(EXTVERSION).sql
SCRIPTS = $(wildcard $(citusdb_top_builddir)/src/bin/scripts/*)
SCRIPTS = $(wildcard $(citus_top_builddir)/src/bin/scripts/*)
# directories with source files
SUBDIRS = . commands executor master planner relay test utils worker
@ -15,7 +15,7 @@ SUBDIRS = . commands executor master planner relay test utils worker
# That patsubst rule searches all directories listed in SUBDIRS for .c
# files, and adds the corresponding .o files to OBJS
OBJS += \
$(patsubst $(citusdb_abs_srcdir)/%.c,%.o,$(foreach dir,$(SUBDIRS), $(wildcard $(citusdb_abs_srcdir)/$(dir)/*.c)))
$(patsubst $(citus_abs_srcdir)/%.c,%.o,$(foreach dir,$(SUBDIRS), $(wildcard $(citus_abs_srcdir)/$(dir)/*.c)))
# define build process for latest install file
$(EXTENSION)--$(EXTVERSION).sql: $(EXTENSION).sql
@ -28,6 +28,6 @@ NO_PGXS = 1
SHLIB_LINK = $(libpq)
include $(citusdb_top_builddir)/Makefile.global
include $(citus_top_builddir)/Makefile.global
override CPPFLAGS += -I$(libpq_srcdir)

View File

@ -0,0 +1,6 @@
# Citus extension
comment = 'Citus distributed database'
default_version = '5.0'
module_pathname = '$libdir/citus'
relocatable = false
schema = pg_catalog

View File

@ -1,24 +1,24 @@
/* citusdb.sql */
/* citus.sql */
-- complain if script is sourced in psql, rather than via CREATE EXTENSION
\echo Use "CREATE EXTENSION citusdb" to load this file. \quit
\echo Use "CREATE EXTENSION citus" to load this file. \quit
CREATE SCHEMA citusdb;
CREATE SCHEMA citus;
-- Ensure CREATE EXTENSION is not run against an old citusdb data
-- Ensure CREATE EXTENSION is not run against an old citus data
-- directory, we're not compatible (due to the builtin functions/tables)
DO $$
BEGIN
IF EXISTS(SELECT * FROM pg_proc WHERE proname = 'worker_apply_shard_ddl_command') THEN
RAISE 'cannot install citusdb extension in CitusDB 4 data directory';
RAISE 'cannot install citus extension in Citus 4 data directory';
END IF;
END;
$$;
/*****************************************************************************
* CitusDB data types
* Citus data types
*****************************************************************************/
CREATE TYPE citusdb.distribution_type AS ENUM (
CREATE TYPE citus.distribution_type AS ENUM (
'hash',
'range',
'append'
@ -26,18 +26,18 @@ CREATE TYPE citusdb.distribution_type AS ENUM (
/*****************************************************************************
* CitusDB tables & corresponding indexes
* Citus tables & corresponding indexes
*****************************************************************************/
CREATE TABLE citusdb.pg_dist_partition(
CREATE TABLE citus.pg_dist_partition(
logicalrelid Oid NOT NULL,
partmethod "char" NOT NULL,
partkey text NOT NULL
);
CREATE UNIQUE INDEX pg_dist_partition_logical_relid_index
ON citusdb.pg_dist_partition using btree(logicalrelid);
ALTER TABLE citusdb.pg_dist_partition SET SCHEMA pg_catalog;
ON citus.pg_dist_partition using btree(logicalrelid);
ALTER TABLE citus.pg_dist_partition SET SCHEMA pg_catalog;
CREATE TABLE citusdb.pg_dist_shard(
CREATE TABLE citus.pg_dist_shard(
logicalrelid oid NOT NULL,
shardid int8 NOT NULL,
shardstorage "char" NOT NULL,
@ -46,12 +46,12 @@ CREATE TABLE citusdb.pg_dist_shard(
shardmaxvalue text
);
CREATE UNIQUE INDEX pg_dist_shard_shardid_index
ON citusdb.pg_dist_shard using btree(shardid);
ON citus.pg_dist_shard using btree(shardid);
CREATE INDEX pg_dist_shard_logical_relid_index
ON citusdb.pg_dist_shard using btree(logicalrelid);
ALTER TABLE citusdb.pg_dist_shard SET SCHEMA pg_catalog;
ON citus.pg_dist_shard using btree(logicalrelid);
ALTER TABLE citus.pg_dist_shard SET SCHEMA pg_catalog;
CREATE TABLE citusdb.pg_dist_shard_placement(
CREATE TABLE citus.pg_dist_shard_placement(
shardid int8 NOT NULL,
shardstate int4 NOT NULL,
shardlength int8 NOT NULL,
@ -59,40 +59,40 @@ CREATE TABLE citusdb.pg_dist_shard_placement(
nodeport int8 NOT NULL
) WITH oids;
CREATE UNIQUE INDEX pg_dist_shard_placement_oid_index
ON citusdb.pg_dist_shard_placement using btree(oid);
ON citus.pg_dist_shard_placement using btree(oid);
CREATE INDEX pg_dist_shard_placement_shardid_index
ON citusdb.pg_dist_shard_placement using btree(shardid);
ON citus.pg_dist_shard_placement using btree(shardid);
CREATE INDEX pg_dist_shard_placement_nodeid_index
ON citusdb.pg_dist_shard_placement using btree(nodename, nodeport);
ALTER TABLE citusdb.pg_dist_shard_placement SET SCHEMA pg_catalog;
ON citus.pg_dist_shard_placement using btree(nodename, nodeport);
ALTER TABLE citus.pg_dist_shard_placement SET SCHEMA pg_catalog;
/*****************************************************************************
* CitusDB sequences
* Citus sequences
*****************************************************************************/
/*
* Unternal sequence to generate 64-bit shard ids. These identifiers are then
* used to identify shards in the distributed database.
*/
CREATE SEQUENCE citusdb.pg_dist_shardid_seq
CREATE SEQUENCE citus.pg_dist_shardid_seq
MINVALUE 102008
NO CYCLE;
ALTER SEQUENCE citusdb.pg_dist_shardid_seq SET SCHEMA pg_catalog;
ALTER SEQUENCE citus.pg_dist_shardid_seq SET SCHEMA pg_catalog;
/*
* internal sequence to generate 32-bit jobIds. These identifiers are then
* used to identify jobs in the distributed database; and they wrap at 32-bits
* to allow for slave nodes to independently execute their distributed jobs.
*/
CREATE SEQUENCE citusdb.pg_dist_jobid_seq
CREATE SEQUENCE citus.pg_dist_jobid_seq
MINVALUE 2 /* first jobId reserved for clean up jobs */
MAXVALUE 4294967296;
ALTER SEQUENCE citusdb.pg_dist_jobid_seq SET SCHEMA pg_catalog;
ALTER SEQUENCE citus.pg_dist_jobid_seq SET SCHEMA pg_catalog;
/*****************************************************************************
* CitusDB functions
* Citus functions
*****************************************************************************/
/* For backward compatibility and ease of use create functions et al. in pg_catalog */
@ -173,13 +173,13 @@ COMMENT ON FUNCTION master_get_round_robin_candidate_nodes(shard_id bigint)
CREATE FUNCTION master_create_distributed_table(table_name regclass,
distribution_column text,
distribution_method citusdb.distribution_type)
distribution_method citus.distribution_type)
RETURNS void
LANGUAGE C STRICT
AS 'MODULE_PATHNAME', $$master_create_distributed_table$$;
COMMENT ON FUNCTION master_create_distributed_table(table_name regclass,
distribution_column text,
distribution_method citusdb.distribution_type)
distribution_method citus.distribution_type)
IS 'define the table distribution functions';
-- define shard creation function for hash-partitioned tables
@ -314,7 +314,7 @@ COMMENT ON FUNCTION worker_append_table_to_shard(text, text, text, integer)
/* trigger functions */
CREATE OR REPLACE FUNCTION citusdb_drop_trigger()
CREATE OR REPLACE FUNCTION citus_drop_trigger()
RETURNS event_trigger
LANGUAGE plpgsql
SET search_path = pg_catalog
@ -349,7 +349,7 @@ BEGIN
END LOOP;
END;
$cdbdt$;
COMMENT ON FUNCTION citusdb_drop_trigger()
COMMENT ON FUNCTION citus_drop_trigger()
IS 'perform checks and actions at the end of DROP actions';
CREATE FUNCTION master_dist_partition_cache_invalidate()
@ -369,21 +369,21 @@ COMMENT ON FUNCTION master_dist_shard_cache_invalidate()
/* internal functions, not user accessible */
CREATE FUNCTION citusdb_extradata_container(INTERNAL)
CREATE FUNCTION citus_extradata_container(INTERNAL)
RETURNS void
LANGUAGE C
AS 'MODULE_PATHNAME', $$citusdb_extradata_container$$;
COMMENT ON FUNCTION pg_catalog.citusdb_extradata_container(INTERNAL)
AS 'MODULE_PATHNAME', $$citus_extradata_container$$;
COMMENT ON FUNCTION pg_catalog.citus_extradata_container(INTERNAL)
IS 'placeholder function to store additional data in postgres node trees';
/*****************************************************************************
* CitusDB triggers
* Citus triggers
*****************************************************************************/
CREATE EVENT TRIGGER citusdb_cascade_to_partition
CREATE EVENT TRIGGER citus_cascade_to_partition
ON SQL_DROP
EXECUTE PROCEDURE citusdb_drop_trigger();
EXECUTE PROCEDURE citus_drop_trigger();
CREATE TRIGGER dist_partition_cache_invalidate
AFTER INSERT OR UPDATE OR DELETE
@ -397,7 +397,7 @@ CREATE TRIGGER dist_shard_cache_invalidate
/*****************************************************************************
* CitusDB aggregates
* Citus aggregates
*****************************************************************************/
CREATE AGGREGATE array_cat_agg(anyarray) (SFUNC = array_cat, STYPE = anyarray);
COMMENT ON AGGREGATE array_cat_agg(anyarray)

View File

@ -1,6 +0,0 @@
# CitusDB extension
comment = 'CitusDB distributed database'
default_version = '5.0'
module_pathname = '$libdir/citusdb'
relocatable = false
schema = pg_catalog

View File

@ -165,7 +165,7 @@ master_create_distributed_table(PG_FUNCTION_ARGS)
*
* Similarly, do not allow UNIQUE constraint and/or PRIMARY KEY if it does not
* include partition column. This check is important for two reasons. First,
* currently CitusDB does not enforce uniqueness constraint on multiple shards.
* currently Citus does not enforce uniqueness constraint on multiple shards.
* Second, INSERT INTO .. ON CONFLICT (i.e., UPSERT) queries can be executed with no
* further check for constraints.
*/
@ -191,7 +191,7 @@ master_create_distributed_table(PG_FUNCTION_ARGS)
}
/*
* CitusDB cannot enforce uniqueness constraints with overlapping shards. Thus,
* Citus cannot enforce uniqueness constraints with overlapping shards. Thus,
* emit a warning for unique indexes on append partitioned tables.
*/
if (distributionMethod == DISTRIBUTE_BY_APPEND)
@ -262,7 +262,7 @@ master_create_distributed_table(PG_FUNCTION_ARGS)
* necessary for a distributed relation in addition to the preexisting ones
* for a normal relation.
*
* We create one dependency from the (now distributed) relation to the citusdb
* We create one dependency from the (now distributed) relation to the citus
* extension to prevent the extension from being dropped while distributed
* tables exist. Furthermore a dependency from pg_dist_partition's
* distribution clause to the underlying columns is created, but it's marked
@ -281,7 +281,7 @@ RecordDistributedRelationDependencies(Oid distributedRelationId, Node *distribut
relationAddr.objectSubId = 0;
citusExtensionAddr.classId = ExtensionRelationId;
citusExtensionAddr.objectId = get_extension_oid("citusdb", false);
citusExtensionAddr.objectId = get_extension_oid("citus", false);
citusExtensionAddr.objectSubId = 0;
/* dependency from table entry to extension */
@ -294,10 +294,10 @@ RecordDistributedRelationDependencies(Oid distributedRelationId, Node *distribut
/*
* LookupDistributionMethod maps the oids of citusdb.distribution_type enum
* LookupDistributionMethod maps the oids of citus.distribution_type enum
* values to pg_dist_partition.partmethod values.
*
* The passed in oid has to belong to a value of citusdb.distribution_type.
* The passed in oid has to belong to a value of citus.distribution_type.
*/
static char
LookupDistributionMethod(Oid distributionMethodOid)

View File

@ -73,7 +73,7 @@ JobExecutorType(MultiPlan *multiPlan)
ereport(WARNING, (errmsg("this query uses more connections than the "
"configured max_connections limit"),
errhint("Consider increasing max_connections or setting "
"citusdb.task_executor_type to "
"citus.task_executor_type to "
"\"task-tracker\".")));
}
@ -88,7 +88,7 @@ JobExecutorType(MultiPlan *multiPlan)
ereport(WARNING, (errmsg("this query uses more file descriptors than the "
"configured max_files_per_process limit"),
errhint("Consider increasing max_files_per_process or "
"setting citusdb.task_executor_type to "
"setting citus.task_executor_type to "
"\"task-tracker\".")));
}
@ -96,7 +96,7 @@ JobExecutorType(MultiPlan *multiPlan)
if (dependedJobCount > 0)
{
ereport(ERROR, (errmsg("cannot use real time executor with repartition jobs"),
errhint("Set citusdb.task_executor_type to "
errhint("Set citus.task_executor_type to "
"\"task-tracker\".")));
}
}
@ -119,7 +119,7 @@ JobExecutorType(MultiPlan *multiPlan)
if (dependedJobCount > 0)
{
ereport(ERROR, (errmsg("cannot use router executor with repartition jobs"),
errhint("Set citusdb.task_executor_type to "
errhint("Set citus.task_executor_type to "
"\"task-tracker\".")));
}
@ -128,7 +128,7 @@ JobExecutorType(MultiPlan *multiPlan)
{
ereport(ERROR, (errmsg("cannot use router executor with queries that "
"hit multiple shards"),
errhint("Set citusdb.task_executor_type to \"real-time\" or "
errhint("Set citus.task_executor_type to \"real-time\" or "
"\"task-tracker\".")));
}
@ -138,7 +138,7 @@ JobExecutorType(MultiPlan *multiPlan)
if (list_length(workerDependentTaskList) > 0)
{
ereport(ERROR, (errmsg("cannot use router executor with JOINs"),
errhint("Set citusdb.task_executor_type to \"real-time\" or "
errhint("Set citus.task_executor_type to \"real-time\" or "
"\"task-tracker\".")));
}
@ -146,7 +146,7 @@ JobExecutorType(MultiPlan *multiPlan)
if (masterQuery != NULL && list_length(masterQuery->sortClause) > 0)
{
ereport(ERROR, (errmsg("cannot use router executor with ORDER BY clauses"),
errhint("Set citusdb.task_executor_type to \"real-time\" or "
errhint("Set citus.task_executor_type to \"real-time\" or "
"\"task-tracker\".")));
}
@ -158,7 +158,7 @@ JobExecutorType(MultiPlan *multiPlan)
if (masterQueryHasAggregates)
{
ereport(ERROR, (errmsg("cannot use router executor with aggregates"),
errhint("Set citusdb.task_executor_type to \"real-time\" or "
errhint("Set citus.task_executor_type to \"real-time\" or "
"\"task-tracker\".")));
}
}
@ -173,7 +173,7 @@ JobExecutorType(MultiPlan *multiPlan)
* Every task requires 2 FDs, one file and one connection. Some FDs are taken by
* the VFD pool and there is currently no way to reclaim these before opening a
* connection. We therefore assume some FDs to be reserved for VFDs, based on
* observing a typical size of the pool on a CitusDB master.
* observing a typical size of the pool on a Citus master.
*/
int
MaxMasterConnectionCount(void)

View File

@ -1,6 +1,6 @@
/*-------------------------------------------------------------------------
* multi_utility.c
* CitusDB utility hook and related functionality.
* Citus utility hook and related functionality.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------
@ -76,7 +76,7 @@ static void RangeVarCallbackForDropIndex(const RangeVar *rel, Oid relOid, Oid ol
/*
* Utility for handling citusdb specific concerns around utility statements.
* Utility for handling citus specific concerns around utility statements.
*
* There's two basic types of concerns here:
* 1) Intercept utility statements that run after distributed query
@ -168,29 +168,29 @@ multi_ProcessUtility(Node *parsetree,
/*
* Inform the user about potential caveats.
*
* To prevent failures in aborted transactions, CitusDBHasBeenLoaded() needs
* To prevent failures in aborted transactions, CitusHasBeenLoaded() needs
* to be the second condition. See RelationIdGetRelation() which is called
* by CitusDBHasBeenLoaded().
* by CitusHasBeenLoaded().
*/
if (IsA(parsetree, CreatedbStmt) && CitusDBHasBeenLoaded())
if (IsA(parsetree, CreatedbStmt) && CitusHasBeenLoaded())
{
ereport(NOTICE, (errmsg("CitusDB partially supports CREATE DATABASE for "
ereport(NOTICE, (errmsg("Citus partially supports CREATE DATABASE for "
"distributed databases"),
errdetail("CitusDB does not propagate CREATE DATABASE "
errdetail("Citus does not propagate CREATE DATABASE "
"command to workers"),
errhint("You can manually create a database and its "
"extensions on workers.")));
}
else if (IsA(parsetree, CreateSchemaStmt) && CitusDBHasBeenLoaded())
else if (IsA(parsetree, CreateSchemaStmt) && CitusHasBeenLoaded())
{
ereport(NOTICE, (errmsg("CitusDB partially supports CREATE SCHEMA "
ereport(NOTICE, (errmsg("Citus partially supports CREATE SCHEMA "
"for distributed databases"),
errdetail("schema usage in joins and in some UDFs "
"provided by CitusDB are not supported yet")));
"provided by Citus are not supported yet")));
}
else if (IsA(parsetree, CreateRoleStmt) && CitusDBHasBeenLoaded())
else if (IsA(parsetree, CreateRoleStmt) && CitusHasBeenLoaded())
{
ereport(NOTICE, (errmsg("CitusDB does not support CREATE ROLE/USER "
ereport(NOTICE, (errmsg("Citus does not support CREATE ROLE/USER "
"for distributed databases"),
errdetail("Multiple roles are currently supported "
"only for local tables")));
@ -204,7 +204,7 @@ multi_ProcessUtility(Node *parsetree,
/*
* WarnIfDropCitusExtension prints a WARNING if dropStatement includes dropping
* citusdb extension.
* citus extension.
*/
static void
WarnIfDropCitusExtension(DropStmt *dropStatement)
@ -218,8 +218,8 @@ WarnIfDropCitusExtension(DropStmt *dropStatement)
List *objectNameList = lfirst(dropStatementObject);
char *objectName = NameListToString(objectNameList);
/* we're only concerned with the citusdb extension */
if (strncmp("citusdb", objectName, NAMEDATALEN) == 0)
/* we're only concerned with the citus extension */
if (strncmp("citus", objectName, NAMEDATALEN) == 0)
{
/*
* Warn the user about the possibility of invalid cache. Also, see
@ -296,7 +296,7 @@ VerifyTransmitStmt(CopyStmt *copyStatement)
/*
* ProcessCopyStmt handles CitusDB specific concerns for COPY like supporting
* ProcessCopyStmt handles Citus specific concerns for COPY like supporting
* COPYing from distributed tables and preventing unsupported actions.
*/
static Node *

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_explain.c
* CitusDB explain support.
* Citus explain support.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------

View File

@ -175,7 +175,7 @@ FixedJoinOrderList(FromExpr *fromExpr, List *tableEntryList)
"query"),
errdetail("Cannot perform outer joins with broadcast "
"joins of more than 1 shard"),
errhint("Set citusdb.large_table_shard_count to 1")));
errhint("Set citus.large_table_shard_count to 1")));
}
}
else if (nextJoinNode->joinRuleType == LOCAL_PARTITION_JOIN)

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_planner.c
* General CitusDB planner code.
* General Citus planner code.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------
@ -45,7 +45,7 @@ multi_planner(Query *parse, int cursorOptions, ParamListInfo boundParams)
PlannedStmt *result = NULL;
/*
* First call into standard planner. This is required because the CitusDB
* First call into standard planner. This is required because the Citus
* planner relies on parse tree transformations made by postgres' planner.
*/
result = standard_planner(parse, cursorOptions, boundParams);
@ -90,7 +90,7 @@ CreatePhysicalPlan(Query *parse)
/*
* This check is here to make it likely that all node types used in
* CitusDB are dumpable. Explain can dump logical and physical plans
* Citus are dumpable. Explain can dump logical and physical plans
* using the extended outfuncs infrastructure, but it's infeasible to
* test most plans. MultiQueryContainerNode always serializes the
* physical plan, so there's no need to check that separately.
@ -132,7 +132,7 @@ HasCitusToplevelNode(PlannedStmt *result)
* yet. Directly return false, part of the required infrastructure for
* further checks might not be present.
*/
if (!CitusDBHasBeenLoaded())
if (!CitusHasBeenLoaded())
{
return false;
}
@ -259,7 +259,7 @@ GetMultiPlanString(PlannedStmt *result)
if (list_length(fauxFuncExpr->args) != 1)
{
ereport(ERROR, (errmsg("unexpected number of function arguments to "
"citusdb_extradata_container")));
"citus_extradata_container")));
}
multiPlanData = (Const *) linitial(fauxFuncExpr->args);

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* shared_library_init.c
* Initialize CitusDB extension
* Initialize Citus extension
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------
@ -74,8 +74,8 @@ _PG_init(void)
{
if (!process_shared_preload_libraries_in_progress)
{
ereport(ERROR, (errmsg("CitusDB can only be loaded via shared_preload_libraries"),
errhint("Add citusdb to shared_preload_libraries.")));
ereport(ERROR, (errmsg("Citus can only be loaded via shared_preload_libraries"),
errhint("Add citus to shared_preload_libraries.")));
}
/*
@ -95,8 +95,8 @@ _PG_init(void)
ExecutorEnd_hook != NULL ||
ProcessUtility_hook != NULL)
{
ereport(ERROR, (errmsg("CitusDB has to be loaded first"),
errhint("Place citusdb at the beginning of "
ereport(ERROR, (errmsg("Citus has to be loaded first"),
errhint("Place citus at the beginning of "
"shared_preload_libraries.")));
}
@ -107,7 +107,7 @@ _PG_init(void)
CreateRequiredDirectories();
/*
* Register CitusDB configuration variables. Do so before intercepting
* Register Citus configuration variables. Do so before intercepting
* hooks or calling initialization functions, in case we want to do the
* latter in a configuration dependent manner.
*/
@ -137,7 +137,7 @@ _PG_init(void)
/*
* CreateRequiredDirectories - Create directories required for CitusDB to
* CreateRequiredDirectories - Create directories required for Citus to
* function.
*
* These used to be created by initdb, but that's not possible anymore.
@ -166,12 +166,12 @@ CreateRequiredDirectories(void)
}
/* Register CitusDB configuration variables. */
/* Register Citus configuration variables. */
static void
RegisterCitusConfigVariables(void)
{
DefineCustomStringVariable(
"citusdb.worker_list_file",
"citus.worker_list_file",
gettext_noop("Sets the server's \"worker_list\" configuration file."),
NULL,
&WorkerListFileName,
@ -182,7 +182,7 @@ RegisterCitusConfigVariables(void)
NormalizeWorkerListPath();
DefineCustomBoolVariable(
"citusdb.binary_master_copy_format",
"citus.binary_master_copy_format",
gettext_noop("Use the binary master copy format."),
gettext_noop("When enabled, data is copied from workers to the master "
"in PostgreSQL's binary serialization format."),
@ -193,7 +193,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.binary_worker_copy_format",
"citus.binary_worker_copy_format",
gettext_noop("Use the binary worker copy format."),
gettext_noop("When enabled, data is copied from workers to workers "
"in PostgreSQL's binary serialization format when "
@ -205,7 +205,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.expire_cached_shards",
"citus.expire_cached_shards",
gettext_noop("Enables shard cache expiration if a shard's size on disk has changed. "),
gettext_noop("When appending to an existing shard, old data may still be cached on "
"other workers. This configuration entry activates automatic "
@ -217,7 +217,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.subquery_pushdown",
"citus.subquery_pushdown",
gettext_noop("Enables supported subquery pushdown to workers."),
NULL,
&SubqueryPushdown,
@ -227,7 +227,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.log_multi_join_order",
"citus.log_multi_join_order",
gettext_noop("Logs the distributed join order to the server log."),
gettext_noop("We use this private configuration entry as a debugging aid. "
"If enabled, we print the distributed join order."),
@ -238,7 +238,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.explain_multi_logical_plan",
"citus.explain_multi_logical_plan",
gettext_noop("Enables Explain to print out distributed logical plans."),
gettext_noop("We use this private configuration entry as a debugging aid. "
"If enabled, the Explain command prints out the optimized "
@ -250,7 +250,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.explain_multi_physical_plan",
"citus.explain_multi_physical_plan",
gettext_noop("Enables Explain to print out distributed physical plans."),
gettext_noop("We use this private configuration entry as a debugging aid. "
"If enabled, the Explain command prints out the physical "
@ -262,7 +262,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomBoolVariable(
"citusdb.all_modifications_commutative",
"citus.all_modifications_commutative",
gettext_noop("Bypasses commutativity checks when enabled"),
NULL,
&AllModificationsCommutative,
@ -272,7 +272,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.shard_replication_factor",
"citus.shard_replication_factor",
gettext_noop("Sets the replication factor for shards."),
gettext_noop("Shards are replicated across nodes according to this "
"replication factor. Note that shards read this "
@ -285,7 +285,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.shard_max_size",
"citus.shard_max_size",
gettext_noop("Sets the maximum size a shard will grow before it gets split."),
gettext_noop("Shards store table and file data. When the source "
"file's size for one shard exceeds this configuration "
@ -300,7 +300,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.max_worker_nodes_tracked",
"citus.max_worker_nodes_tracked",
gettext_noop("Sets the maximum number of worker nodes that are tracked."),
gettext_noop("Worker nodes' network locations, their membership and "
"health status are tracked in a shared hash table on "
@ -314,7 +314,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.remote_task_check_interval",
"citus.remote_task_check_interval",
gettext_noop("Sets the frequency at which we check job statuses."),
gettext_noop("The master node assigns tasks to workers nodes, and "
"then regularly checks with them about each task's "
@ -327,7 +327,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.task_tracker_delay",
"citus.task_tracker_delay",
gettext_noop("Task tracker sleep time between task management rounds."),
gettext_noop("The task tracker process wakes up regularly, walks over "
"all tasks assigned to it, and schedules and executes these "
@ -341,7 +341,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.max_assign_task_batch_size",
"citus.max_assign_task_batch_size",
gettext_noop("Sets the maximum number of tasks to assign per round."),
gettext_noop("The master node synchronously assigns tasks to workers in "
"batches. Bigger batches allow for faster task assignment, "
@ -355,7 +355,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.max_tracked_tasks_per_node",
"citus.max_tracked_tasks_per_node",
gettext_noop("Sets the maximum number of tracked tasks per node."),
gettext_noop("The task tracker processes keeps all assigned tasks in "
"a shared hash table, and schedules and executes these "
@ -369,7 +369,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.max_running_tasks_per_node",
"citus.max_running_tasks_per_node",
gettext_noop("Sets the maximum number of tasks to run concurrently per node."),
gettext_noop("The task tracker process schedules and executes the tasks "
"assigned to it as appropriate. This configuration value "
@ -382,7 +382,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.partition_buffer_size",
"citus.partition_buffer_size",
gettext_noop("Sets the buffer size to use for partition operations."),
gettext_noop("Worker nodes allow for table data to be repartitioned "
"into multiple text files, much like Hadoop's Map "
@ -396,7 +396,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.large_table_shard_count",
"citus.large_table_shard_count",
gettext_noop("The shard count threshold over which a table is considered large."),
gettext_noop("A distributed table is considered to be large if it has "
"more shards than the value specified here. This largeness "
@ -409,7 +409,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomIntVariable(
"citusdb.limit_clause_row_fetch_count",
"citus.limit_clause_row_fetch_count",
gettext_noop("Number of rows to fetch per task for limit clause optimization."),
gettext_noop("Select queries get partitioned and executed as smaller "
"tasks. In some cases, select queries with limit clauses "
@ -424,7 +424,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomRealVariable(
"citusdb.count_distinct_error_rate",
"citus.count_distinct_error_rate",
gettext_noop("Desired error rate when calculating count(distinct) "
"approximates using the postgresql-hll extension. "
"0.0 disables approximations for count(distinct); 1.0 "
@ -437,7 +437,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomEnumVariable(
"citusdb.task_assignment_policy",
"citus.task_assignment_policy",
gettext_noop("Sets the policy to use when assigning tasks to worker nodes."),
gettext_noop("The master node assigns tasks to worker nodes based on shard "
"locations. This configuration value specifies the policy to "
@ -454,7 +454,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomEnumVariable(
"citusdb.task_executor_type",
"citus.task_executor_type",
gettext_noop("Sets the executor type to be used for distributed queries."),
gettext_noop("The master node chooses between three different executor types "
"when executing a distributed query. The router executor is "
@ -472,7 +472,7 @@ RegisterCitusConfigVariables(void)
NULL, NULL, NULL);
DefineCustomEnumVariable(
"citusdb.shard_placement_policy",
"citus.shard_placement_policy",
gettext_noop("Sets the policy to use when choosing nodes for shard placement."),
gettext_noop("The master node chooses which worker nodes to place new shards "
"on. This configuration value specifies the policy to use when "
@ -486,8 +486,8 @@ RegisterCitusConfigVariables(void)
0,
NULL, NULL, NULL);
/* warn about config items in the citusdb namespace that are not registered above */
EmitWarningsOnPlaceholders("citusdb");
/* warn about config items in the citus namespace that are not registered above */
EmitWarningsOnPlaceholders("citus");
/* Also warn about citus namespace, as that's a very likely misspelling */
EmitWarningsOnPlaceholders("citus");
}
@ -495,7 +495,7 @@ RegisterCitusConfigVariables(void)
/*
* NormalizeWorkerListPath converts the path configured via
* citusdb.worker_list_file into an absolute path, falling back to the default
* citus.worker_list_file into an absolute path, falling back to the default
* value if necessary. The previous value of the config variable is
* overwritten with the normalized value.
*
@ -525,11 +525,11 @@ NormalizeWorkerListPath(void)
ereport(FATAL, (errcode(ERRCODE_INVALID_PARAMETER_VALUE),
errmsg("%s does not know where to find the \"worker_list_file\" "
"configuration file.\n"
"This can be specified as \"citusdb.worker_list_file\" in "
"This can be specified as \"citus.worker_list_file\" in "
"\"%s\", or by the -D invocation option, or by the PGDATA "
"environment variable.\n", progname, ConfigFileName)));
}
SetConfigOption("citusdb.worker_list_file", absoluteFileName, PGC_POSTMASTER, PGC_S_OVERRIDE);
SetConfigOption("citus.worker_list_file", absoluteFileName, PGC_POSTMASTER, PGC_S_OVERRIDE);
free(absoluteFileName);
}

View File

@ -2,7 +2,7 @@
*
* test/src/connection_cache.c
*
* This file contains functions to exercise CitusDB's connection hash
* This file contains functions to exercise Citus's connection hash
* functionality for purposes of unit testing.
*
* Copyright (c) 2014-2015, Citus Data, Inc.

View File

@ -3,7 +3,7 @@
* test/src/create_shards.c
*
* This file contains functions to exercise shard creation functionality
* within CitusDB.
* within Citus.
*
* Copyright (c) 2014-2015, Citus Data, Inc.
*

View File

@ -3,7 +3,7 @@
* test/src/distribution_metadata.c
*
* This file contains functions to exercise distributed table metadata
* functionality within CitusDB.
* functionality within Citus.
*
* Copyright (c) 2014-2015, Citus Data, Inc.
*

View File

@ -3,7 +3,7 @@
* test/src/generate_ddl_commands.c
*
* This file contains functions to exercise DDL generation functionality
* within CitusDB.
* within Citus.
*
* Copyright (c) 2014-2015, Citus Data, Inc.
*

View File

@ -3,7 +3,7 @@
* test/src/create_shards.c
*
* This file contains functions to exercise shard creation functionality
* within CitusDB.
* within Citus.
*
* Copyright (c) 2014-2015, Citus Data, Inc.
*

View File

@ -2,7 +2,7 @@
*
* test/src/test_helper_functions.c
*
* This file contains helper functions used in many CitusDB tests.
* This file contains helper functions used in many Citus tests.
*
* Copyright (c) 2014-2015, Citus Data, Inc.
*

View File

@ -16,7 +16,7 @@
/* exports for SQL callable functions */
PG_FUNCTION_INFO_V1(citusdb_extradata_container);
PG_FUNCTION_INFO_V1(citus_extradata_container);
/*
@ -189,7 +189,7 @@ ExtractRangeTblExtraData(RangeTblEntry *rte, CitusRTEKind *rteKind,
if (list_length(fauxFuncExpr->args) != 4)
{
ereport(ERROR, (errmsg("unexpected number of function arguments to "
"citusdb_extradata_container")));
"citus_extradata_container")));
return;
}
@ -290,13 +290,13 @@ GetRangeTblKind(RangeTblEntry *rte)
/*
* citusdb_extradata_container is a placeholder function to store information
* needed by CitusDB in plain postgres node trees. Executor and other hooks
* citus_extradata_container is a placeholder function to store information
* needed by Citus in plain postgres node trees. Executor and other hooks
* should always intercept statements containing calls to this function. It's
* not actually SQL callable by the user because of an INTERNAL argument.
*/
Datum
citusdb_extradata_container(PG_FUNCTION_ARGS)
citus_extradata_container(PG_FUNCTION_ARGS)
{
ereport(ERROR, (errmsg("not supposed to get here, did you cheat?")));

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* citus_outfuncs.c
* Output functions for CitusDB tree nodes.
* Output functions for Citus tree nodes.
*
* Portions Copyright (c) 1996-2014, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
@ -9,7 +9,7 @@
*
* NOTES
* This is a wrapper around postgres' nodeToString() that additionally
* supports CitusDB node types.
* supports Citus node types.
*
* Keep as closely aligned with the upstream version as possible.
*
@ -220,7 +220,7 @@ _outDatum(StringInfo str, Datum value, int typlen, bool typbyval)
/*****************************************************************************
* Output routines for CitusDB node types
* Output routines for Citus node types
*****************************************************************************/
static void

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* citus_readfuncs.c
* CitusDB adapted reader functions for Citus & Postgres tree nodes
* Citus adapted reader functions for Citus & Postgres tree nodes
*
* Portions Copyright (c) 1996-2014, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* citus_readfuncs.c
* CitusDB adapted reader functions for Citus & Postgres tree nodes
* Citus adapted reader functions for Citus & Postgres tree nodes
*
* Portions Copyright (c) 1996-2014, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California

View File

@ -249,7 +249,7 @@ CreateNodeConnectionHash(void)
info.hcxt = CacheMemoryContext;
hashFlags = (HASH_ELEM | HASH_FUNCTION | HASH_CONTEXT);
nodeConnectionHash = hash_create("citusdb connection cache", 32, &info, hashFlags);
nodeConnectionHash = hash_create("citus connection cache", 32, &info, hashFlags);
return nodeConnectionHash;
}
@ -257,7 +257,7 @@ CreateNodeConnectionHash(void)
/*
* ConnectToNode opens a connection to a remote PostgreSQL server. The function
* configures the connection's fallback application name to 'citusdb' and sets
* configures the connection's fallback application name to 'citus' and sets
* the remote encoding to match the local one. This function requires that the
* port be specified as a string for easier use with libpq functions.
*
@ -277,7 +277,7 @@ ConnectToNode(char *nodeName, char *nodePort)
"client_encoding", "connect_timeout", "dbname", NULL
};
const char *valueArray[] = {
nodeName, nodePort, "citusdb", clientEncoding,
nodeName, nodePort, "citus", clientEncoding,
CLIENT_CONNECT_TIMEOUT_SECONDS, dbname, NULL
};

View File

@ -77,7 +77,7 @@ IsDistributedTable(Oid relationId)
* yet. As we can't do lookups in nonexistent tables, directly return
* false.
*/
if (!CitusDBHasBeenLoaded())
if (!CitusHasBeenLoaded())
{
return false;
}
@ -155,7 +155,7 @@ DistributedTableCacheEntry(Oid distributedRelationId)
* yet. As we can't do lookups in nonexistent tables, directly return NULL
* here.
*/
if (!CitusDBHasBeenLoaded())
if (!CitusHasBeenLoaded())
{
return NULL;
}
@ -292,7 +292,7 @@ LookupDistTableCacheEntry(Oid relationId)
/*
* CitusDBHasBeenLoaded returns true if the citusdb extension has been created
* CitusHasBeenLoaded returns true if the citus extension has been created
* in the current database and the extension script has been executed. Otherwise,
* it returns false. The result is cached as this is called very frequently.
*
@ -301,17 +301,17 @@ LookupDistTableCacheEntry(Oid relationId)
* acceptable.
*/
bool
CitusDBHasBeenLoaded(void)
CitusHasBeenLoaded(void)
{
static bool extensionLoaded = false;
/* recheck presence until citusdb has been loaded */
/* recheck presence until citus has been loaded */
if (!extensionLoaded)
{
bool extensionPresent = false;
bool extensionScriptExecuted = true;
Oid extensionOid = get_extension_oid("citusdb", true);
Oid extensionOid = get_extension_oid("citus", true);
if (extensionOid != InvalidOid)
{
extensionPresent = true;
@ -319,7 +319,7 @@ CitusDBHasBeenLoaded(void)
if (extensionPresent)
{
/* check if CitusDB extension objects are still being created */
/* check if Citus extension objects are still being created */
if (creating_extension && CurrentExtensionObject == extensionOid)
{
extensionScriptExecuted = false;
@ -428,7 +428,7 @@ CitusExtraDataContainerFuncId(void)
if (cachedOid == InvalidOid)
{
nameList = list_make2(makeString("pg_catalog"),
makeString("citusdb_extradata_container"));
makeString("citus_extradata_container"));
cachedOid = LookupFuncName(nameList, 1, paramOids, false);
}

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_resowner.c
* CitusDB resource owner integration
* Citus resource owner integration
*
* An extension can't directly add members to ResourceOwnerData. Instead we
* have to use the resource owner callback mechanism. Right now it's

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* resource_lock.c
* Locking Infrastructure for CitusDB.
* Locking Infrastructure for Citus.
*
* To avoid introducing a new type of locktag - that then could not be
* displayed by core functionality - we reuse advisory locks. If we'd just

View File

@ -240,7 +240,7 @@ TaskTrackerMain(Datum main_arg)
/*
* Reload worker membership file. For now we do that in the task
* tracker because that's currently the only background worker in
* CitusDB. And only background workers allow us to safely
* Citus. And only background workers allow us to safely
* register a SIGHUP handler.
*/
LoadWorkerNodeList(WorkerListFileName);
@ -295,7 +295,7 @@ WorkerTasksHashEnter(uint64 jobId, uint32 taskId)
{
ereport(ERROR, (errcode(ERRCODE_OUT_OF_MEMORY),
errmsg("out of shared memory"),
errhint("Try increasing citusdb.max_tracked_tasks_per_node.")));
errhint("Try increasing citus.max_tracked_tasks_per_node.")));
}
/* check that we do not have the same task assigned twice to this node */

View File

@ -9,12 +9,12 @@
#
#-------------------------------------------------------------------------
citusdb_subdir = src/bin/csql
citusdb_top_builddir = ../../..
citus_subdir = src/bin/csql
citus_top_builddir = ../../..
PROGRAM = csql
PGFILEDESC = "csql - the CitusDB interactive terminal"
PGFILEDESC = "csql - the Citus interactive terminal"
PGAPPICON=win32
OBJS =command.o common.o help.o input.o stringutils.o mainloop.o copy.o \
@ -26,7 +26,7 @@ OBJS =command.o common.o help.o input.o stringutils.o mainloop.o copy.o \
PG_LIBS = $(libpq)
include $(citusdb_top_builddir)/Makefile.global
include $(citus_top_builddir)/Makefile.global
override CPPFLAGS += -I$(libpq_srcdir) -I$(top_srcdir)/src/bin/csql

View File

@ -1,5 +1,5 @@
/*
* csql - the CitusDB interactive terminal
* csql - the Citus interactive terminal
* copy_options.c
* Routines for parsing copy and stage meta commands.
*

View File

@ -1,5 +1,5 @@
/*
* csql - the CitusDB interactive terminal
* csql - the Citus interactive terminal
* copy_options.h
* Shared declarations for parsing copy and stage meta-commands. The stage
* meta-command borrows from copy's syntax, but does not yet support

View File

@ -67,7 +67,7 @@ usage(unsigned short int pager)
output = PageOutput(59, pager ? &(pset.popt.topt) : NULL);
printf(_("csql is the CitusDB interactive terminal.\n\n"));
printf(_("csql is the Citus interactive terminal.\n\n"));
fprintf(output, _("Usage:\n"));
printf(_(" csql [OPTION]... [DBNAME [USERNAME]]\n\n"));

View File

@ -200,7 +200,7 @@ MainLoop(FILE *source)
(line[4] == '\0' || line[4] == ';' || isspace((unsigned char) line[4])))
{
free(line);
puts(_("You are using csql, the command-line interface to CitusDB."));
puts(_("You are using csql, the command-line interface to Citus."));
printf(_("Type: \\copyright for distribution terms\n"
" \\h for help with SQL commands\n"
" \\? for help with csql commands\n"

View File

@ -1,5 +1,5 @@
/*
* csql - the CitusDB interactive terminal
* csql - the Citus interactive terminal
* stage.c
* Helper routines to execute the csql meta-command \stage. These routines
* communicate with the master and worker nodes; and create new shards and

View File

@ -1,5 +1,5 @@
/*
* csql - the CitusDB interactive terminal
* csql - the Citus interactive terminal
* stage.h
* Declarations for the csql meta-command \stage. These declarations define a
* protocol for the client to communicate to the master and worker nodes.

View File

@ -1,4 +1,4 @@
/stamp-h
/stamp-ext-h
/citusdb_config.h
/citusdb_config.h.in~
/citus_config.h
/citus_config.h.in~

View File

@ -1,9 +1,9 @@
/* src/include/citusdb_config.h.in. Generated from configure.in by autoheader. */
/* src/include/citus_config.h.in. Generated from configure.in by autoheader. */
/*
* citusdb_config.h.in is generated by autoconf/autoheader and
* converted into citusdb_config.h by configure. Include when code needs to
* citus_config.h.in is generated by autoconf/autoheader and
* converted into citus_config.h by configure. Include when code needs to
* depend on determinations made by configure.
*
* Do not manually edit!

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* citus_nodefuncs.h
* Node (de-)serialization support for CitusDB.
* Node (de-)serialization support for Citus.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* citus_nodes.h
* Additional node types, and related infrastructure, for CitusDB.
* Additional node types, and related infrastructure, for Citus.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*
@ -52,7 +52,7 @@ typedef enum CitusNodeTag
#define CitusIsA(nodeptr,_type_) (CitusNodeTag(nodeptr) == T_##_type_)
/* CitusDB variant of newNode(), don't use directly. */
/* Citus variant of newNode(), don't use directly. */
#define CitusNewNode(size, tag) \
({ Node *_result; \
AssertMacro((size) >= sizeof(Node)); /* need the tag, at least */ \
@ -63,7 +63,7 @@ typedef enum CitusNodeTag
/*
* CitusMakeNode is CitusDB variant of makeNode(). Use it to create nodes of
* CitusMakeNode is Citus variant of makeNode(). Use it to create nodes of
* the types listed in the CitusNodeTag enum and plain NodeTag. Initializes
* memory, besides the node tag, to 0.
*/

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* citus_ruleutils.h
* CitusDB ruleutils wrapper functions and exported PostgreSQL ruleutils
* Citus ruleutils wrapper functions and exported PostgreSQL ruleutils
* functions.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
@ -15,7 +15,7 @@
#include "nodes/parsenodes.h"
/* Function declarations for version independent CitusDB ruleutils wrapper functions */
/* Function declarations for version independent Citus ruleutils wrapper functions */
extern char *pg_get_extensiondef_string(Oid tableRelationId);
extern char *pg_get_serverdef_string(Oid tableRelationId);
extern char *pg_get_tableschemadef_string(Oid tableRelationId);

View File

@ -9,8 +9,8 @@
*-------------------------------------------------------------------------
*/
#ifndef CITUSDB_LISTUTILS_H
#define CITUSDB_LISTUTILS_H
#ifndef CITUS_LISTUTILS_H
#define CITUS_LISTUTILS_H
#include "postgres.h"
#include "c.h"
@ -23,4 +23,4 @@ extern List * SortList(List *pointerList,
int (*ComparisonFunction)(const void *, const void *));
#endif /* CITUSDB_LISTUTILS_H */
#endif /* CITUS_LISTUTILS_H */

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* metadata_cache.h
* Executor support for CitusDB.
* Executor support for Citus.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*
@ -46,7 +46,7 @@ extern bool IsDistributedTable(Oid relationId);
extern ShardInterval * LoadShardInterval(uint64 shardId);
extern DistTableCacheEntry * DistributedTableCacheEntry(Oid distributedRelationId);
extern bool CitusDBHasBeenLoaded(void);
extern bool CitusHasBeenLoaded(void);
/* relation oids */
extern Oid DistPartitionRelationId(void);

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_executor.h
* Executor support for CitusDB.
* Executor support for Citus.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_explain.h
* Explain support for CitusDB.
* Explain support for Citus.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_planner.h
* General CitusDB planner code.
* General Citus planner code.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_resowner.h
* CitusDB resource owner integration.
* Citus resource owner integration.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* multi_utility.h
* CitusDB utility hook and related functionality.
* Citus utility hook and related functionality.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------

View File

@ -1,7 +1,7 @@
/*-------------------------------------------------------------------------
*
* resource_lock.h
* Locking Infrastructure for CitusDB.
* Locking Infrastructure for Citus.
*
* Copyright (c) 2012-2015, Citus Data, Inc.
*-------------------------------------------------------------------------
@ -21,7 +21,7 @@
* advisory locks. Only 1 and 2 are used allowing us to define non-conflicting
* lock methods.
*
* In case postgres starts to use additional values, CitusDB's values
* In case postgres starts to use additional values, Citus's values
* will have to be changed. That just requires re-compiling and a restart.
*/
typedef enum AdvisoryLocktagClass
@ -29,7 +29,7 @@ typedef enum AdvisoryLocktagClass
/* values defined in postgres' lockfuncs.c */
ADV_LOCKTAG_CLASS_INT64 = 1,
ADV_LOCKTAG_CLASS_INT32 = 2,
/* CitusDB lock types */
/* Citus lock types */
ADV_LOCKTAG_CLASS_CITUS_SHARD_METADATA = 4,
ADV_LOCKTAG_CLASS_CITUS_SHARD = 5,
ADV_LOCKTAG_CLASS_CITUS_JOB = 6

View File

@ -10,8 +10,8 @@
*-------------------------------------------------------------------------
*/
#ifndef CITUSDB_TEST_HELPER_FUNCTIONS_H
#define CITUSDB_TEST_HELPER_FUNCTIONS_H
#ifndef CITUS_TEST_HELPER_FUNCTIONS_H
#define CITUS_TEST_HELPER_FUNCTIONS_H
#include "postgres.h"
#include "c.h"
@ -70,4 +70,4 @@ extern Datum prune_using_both_values(PG_FUNCTION_ARGS);
extern Datum debug_equality_expression(PG_FUNCTION_ARGS);
#endif /* CITUSDB_TEST_HELPER_FUNCTIONS_H */
#endif /* CITUS_TEST_HELPER_FUNCTIONS_H */

View File

@ -23,7 +23,7 @@
/* Maximum length of worker port number (represented as string) */
#define MAX_PORT_LENGTH 10
/* default filename for citusdb.worker_list_file */
/* default filename for citus.worker_list_file */
#define WORKER_LIST_FILENAME "pg_worker_list.conf"
/* Implementation specific definitions used in finding worker nodes */

View File

@ -1,9 +1,9 @@
# Makefile for tests of the CitusDB extension
# Makefile for tests of the Citus extension
citusdb_subdir = src/test/regress
citusdb_top_builddir = ../../..
citus_subdir = src/test/regress
citus_top_builddir = ../../..
include $(citusdb_top_builddir)/Makefile.global
include $(citus_top_builddir)/Makefile.global
# ensure MAJORVERSION is defined (missing in older versions)
ifndef MAJORVERSION
@ -11,11 +11,11 @@ MAJORVERSION := $(basename $(VERSION))
endif
##
## CitusDB regression support
## Citus regression support
##
MULTI_INSTALLDIR=$(CURDIR)/tmp_check/install
pg_regress_multi_check = $(PERL) $(citusdb_abs_srcdir)/pg_regress_multi.pl --pgxsdir="$(pgxsdir)" --bindir="$(bindir)" --libdir="$(libdir)" --majorversion="$(MAJORVERSION)"
MULTI_REGRESS_OPTS = --inputdir=$(citusdb_abs_srcdir) $(pg_regress_locale_flags)
pg_regress_multi_check = $(PERL) $(citus_abs_srcdir)/pg_regress_multi.pl --pgxsdir="$(pgxsdir)" --bindir="$(bindir)" --libdir="$(libdir)" --majorversion="$(MAJORVERSION)"
MULTI_REGRESS_OPTS = --inputdir=$(citus_abs_srcdir) $(pg_regress_locale_flags)
# XXX: Can't actually do useful testruns against install - $libdir
# etc will point to the directory configured during postgres'
@ -26,12 +26,12 @@ cleandir-main:
###
tempinstall-main: cleandir-main
#### mkdir -p $(MULTI_INSTALLDIR)
### $(MAKE) DESTDIR=$(MULTI_INSTALLDIR) -C $(citusdb_top_builddir) install > tmp_check/install.log 2>&1
### $(MAKE) DESTDIR=$(MULTI_INSTALLDIR) -C $(citus_top_builddir) install > tmp_check/install.log 2>&1
# Test input and expected files. These are created by pg_regress itself, so we
# don't have a rule to create them. We do need rules to clean them however.
input_files := $(patsubst $(citusdb_abs_srcdir)/input/%.source,sql/%.sql, $(wildcard $(citusdb_abs_srcdir)/input/*.source))
output_files := $(patsubst $(citusdb_abs_srcdir)/output/%.source,expected/%.out, $(wildcard $(citusdb_abs_srcdir)/output/*.source))
input_files := $(patsubst $(citus_abs_srcdir)/input/%.source,sql/%.sql, $(wildcard $(citus_abs_srcdir)/input/*.source))
output_files := $(patsubst $(citus_abs_srcdir)/output/%.source,expected/%.out, $(wildcard $(citus_abs_srcdir)/output/*.source))
# have make check actually run all tests, but keep check-full as an
# intermediate, for muscle memory backward compatibility.
@ -42,32 +42,32 @@ check-full: check-multi check-multi-task-tracker check-multi-binary check-worker
# using pg_regress_multi_check unnecessarily starts up multiple nodes, which isn't needed
# for check-worker. But that's harmless besides a few cycles.
check-worker: all
$(pg_regress_multi_check) --load-extension=citusdb \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citusdb_abs_srcdir)/worker_schedule $(EXTRA_TESTS)
$(pg_regress_multi_check) --load-extension=citus \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/worker_schedule $(EXTRA_TESTS)
check-multi: all tempinstall-main
$(pg_regress_multi_check) --load-extension=citusdb \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citusdb_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
$(pg_regress_multi_check) --load-extension=citus \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
check-multi-fdw: all tempinstall-main
$(pg_regress_multi_check) --load-extension=citusdb --load-extension=file_fdw -- \
$(MULTI_REGRESS_OPTS) --schedule=$(citusdb_abs_srcdir)/multi_fdw_schedule $(EXTRA_TESTS)
$(pg_regress_multi_check) --load-extension=citus --load-extension=file_fdw -- \
$(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/multi_fdw_schedule $(EXTRA_TESTS)
check-multi-hll: all tempinstall-main
$(pg_regress_multi_check) --load-extension=citusdb --load-extension=hll -- \
$(pg_regress_multi_check) --load-extension=citus --load-extension=hll -- \
$(MULTI_REGRESS_OPTS) $(EXTRA_TESTS) multi_create_table multi_master_protocol multi_stage_data multi_agg_approximate_distinct
check-multi-task-tracker: all tempinstall-main
$(pg_regress_multi_check) --load-extension=citusdb \
--server-option=citusdb.task_executor_type=task-tracker \
--server-option=citusdb.task_tracker_delay=50ms \
--server-option=citusdb.large_table_shard_count=1 \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citusdb_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
$(pg_regress_multi_check) --load-extension=citus \
--server-option=citus.task_executor_type=task-tracker \
--server-option=citus.task_tracker_delay=50ms \
--server-option=citus.large_table_shard_count=1 \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
check-multi-binary: all tempinstall-main
$(pg_regress_multi_check) --load-extension=citusdb \
--server-option=citusdb.binary_worker_copy_format=on \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citusdb_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
$(pg_regress_multi_check) --load-extension=citus \
--server-option=citus.binary_worker_copy_format=on \
-- $(MULTI_REGRESS_OPTS) --schedule=$(citus_abs_srcdir)/multi_schedule $(EXTRA_TESTS)
clean distclean maintainer-clean:
rm -f $(output_files) $(input_files)

View File

@ -7,14 +7,14 @@ ERROR: cannot compute aggregate (distinct)
DETAIL: table partitioning is unsuitable for aggregate (distinct)
HINT: You can load the hll extension from contrib packages and enable distinct approximations.
-- Check approximate count(distinct) at different precisions / error rates
SET citusdb.count_distinct_error_rate = 0.1;
SET citus.count_distinct_error_rate = 0.1;
SELECT count(distinct l_orderkey) FROM lineitem;
count
-------
2612
(1 row)
SET citusdb.count_distinct_error_rate = 0.01;
SET citus.count_distinct_error_rate = 0.01;
SELECT count(distinct l_orderkey) FROM lineitem;
count
-------
@ -102,7 +102,7 @@ SELECT count(DISTINCT l_orderkey) as distinct_order_count, l_quantity FROM linei
-- If we have an order by on count(distinct) that we intend to push down to
-- worker nodes, we need to error out. Otherwise, we are fine.
SET citusdb.limit_clause_row_fetch_count = 1000;
SET citus.limit_clause_row_fetch_count = 1000;
SELECT l_returnflag, count(DISTINCT l_shipdate) as count_distinct, count(*) as total
FROM lineitem
GROUP BY l_returnflag
@ -123,7 +123,7 @@ SELECT l_returnflag, count(DISTINCT l_shipdate) as count_distinct, count(*) as t
(3 rows)
-- Check that we can revert config and disable count(distinct) approximations
SET citusdb.count_distinct_error_rate = 0.0;
SET citus.count_distinct_error_rate = 0.0;
SELECT count(distinct l_orderkey) FROM lineitem;
ERROR: cannot compute aggregate (distinct)
DETAIL: table partitioning is unsuitable for aggregate (distinct)

View File

@ -2,8 +2,8 @@
-- MULTI_BINARY_MASTER_COPY
--
-- Try binary master copy for different executors
SET citusdb.binary_master_copy_format TO 'on';
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.binary_master_copy_format TO 'on';
SET citus.task_executor_type TO 'task-tracker';
SELECT count(*) FROM lineitem;
count
-------
@ -17,7 +17,7 @@ SELECT l_shipmode FROM lineitem WHERE l_partkey = 67310 OR l_partkey = 155190;
MAIL
(2 rows)
SET citusdb.task_executor_type TO 'real-time';
SET citus.task_executor_type TO 'real-time';
SELECT count(*) FROM lineitem;
count
-------

View File

@ -3,19 +3,19 @@
-- ===================================================================
CREATE FUNCTION initialize_remote_temp_table(cstring, integer)
RETURNS bool
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION count_remote_temp_table_rows(cstring, integer)
RETURNS integer
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION get_and_purge_connection(cstring, integer)
RETURNS bool
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION set_connection_status_bad(cstring, integer)
RETURNS bool
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
-- ===================================================================
-- test connection hash functionality

View File

@ -4,7 +4,7 @@
-- create fake fdw for use in tests
CREATE FUNCTION fake_fdw_handler()
RETURNS fdw_handler
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FOREIGN DATA WRAPPER fake_fdw HANDLER fake_fdw_handler;
CREATE SERVER fake_fdw_server FOREIGN DATA WRAPPER fake_fdw;

View File

@ -9,8 +9,8 @@ CREATE SCHEMA "A$AP Mob"
id bigint PRIMARY KEY,
data text NOT NULL DEFAULT 'lorem ipsum'
);
NOTICE: CitusDB partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by CitusDB are not supported yet
NOTICE: Citus partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by Citus are not supported yet
\set insert_target '"A$AP Mob"."Dr. Bronner''s ""Magic"" Soaps"'
-- create proxy and save proxy table name
SELECT create_insert_proxy_for_table(:'insert_target') AS proxy_tablename

View File

@ -3,7 +3,7 @@
-- ===================================================================
CREATE FUNCTION sort_names(cstring, cstring, cstring)
RETURNS cstring
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
-- create a custom type...
CREATE TYPE dummy_type AS (
@ -47,7 +47,7 @@ SELECT master_create_distributed_table('table_to_distribute', 'bad_column', 'has
ERROR: column "bad_column" of relation "table_to_distribute" does not exist
-- use unrecognized partition type
SELECT master_create_distributed_table('table_to_distribute', 'name', 'unrecognized');
ERROR: invalid input value for enum citusdb.distribution_type: "unrecognized"
ERROR: invalid input value for enum citus.distribution_type: "unrecognized"
LINE 1: ..._distributed_table('table_to_distribute', 'name', 'unrecogni...
^
-- use a partition column of a type lacking any default operator class
@ -209,7 +209,7 @@ SELECT master_create_worker_shards('weird_shard_count', 7, 1);
(1 row)
-- CitusDB ensures all shards are roughly the same size
-- Citus ensures all shards are roughly the same size
SELECT shardmaxvalue::integer - shardminvalue::integer AS shard_size
FROM pg_dist_shard
WHERE logicalrelid = 'weird_shard_count'::regclass

View File

@ -109,7 +109,7 @@ SELECT master_create_distributed_table('supplier', 's_suppkey', 'append');
(1 row)
-- now test that CitusDB cannot distribute unique constraints that do not include
-- now test that Citus cannot distribute unique constraints that do not include
-- the partition column
CREATE TABLE primary_key_on_non_part_col
(
@ -127,7 +127,7 @@ CREATE TABLE unique_const_on_non_part_col
SELECT master_create_distributed_table('primary_key_on_non_part_col', 'partition_col', 'hash');
ERROR: cannot distribute relation: "primary_key_on_non_part_col"
DETAIL: Distributed relations cannot have UNIQUE constraints or PRIMARY KEYs that do not include the partition column.
-- now show that CitusDB can distribute unique constrints that include
-- now show that Citus can distribute unique constrints that include
-- the partition column
CREATE TABLE primary_key_on_part_col
(

View File

@ -3,55 +3,55 @@
-- ===================================================================
CREATE FUNCTION load_shard_id_array(regclass)
RETURNS bigint[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION load_shard_interval_array(bigint, anyelement)
RETURNS anyarray
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION load_shard_placement_array(bigint, bool)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION partition_column_id(regclass)
RETURNS smallint
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION partition_type(regclass)
RETURNS "char"
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION is_distributed_table(regclass)
RETURNS boolean
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION column_name_to_column_id(regclass, cstring)
RETURNS smallint
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION create_monolithic_shard_row(regclass)
RETURNS bigint
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION create_healthy_local_shard_placement_row(bigint)
RETURNS void
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION delete_shard_placement_row(bigint, text, bigint)
RETURNS bool
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION update_shard_placement_row_state(bigint, text, bigint, int)
RETURNS bool
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION acquire_shared_shard_lock(bigint)
RETURNS void
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION column_name_to_column(regclass, text)
RETURNS text
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
-- ===================================================================
-- test distribution metadata functionality

View File

@ -3,7 +3,7 @@
-- ===================================================================
CREATE FUNCTION table_ddl_command_array(regclass)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
-- ===================================================================
-- test ddl command generation functionality
@ -33,8 +33,8 @@ SELECT table_ddl_command_array('not_null_table');
-- ensure tables not in search path are schema-prefixed
CREATE SCHEMA not_in_path CREATE TABLE simple_table (id bigint);
NOTICE: CitusDB partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by CitusDB are not supported yet
NOTICE: Citus partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by Citus are not supported yet
SELECT table_ddl_command_array('not_in_path.simple_table');
table_ddl_command_array
-------------------------------------------------------------------------------------------------

View File

@ -3,7 +3,7 @@
-- ===================================================================
CREATE FUNCTION table_ddl_command_array(regclass)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
-- ===================================================================
-- test ddl command generation functionality
@ -33,8 +33,8 @@ SELECT table_ddl_command_array('not_null_table');
-- ensure tables not in search path are schema-prefixed
CREATE SCHEMA not_in_path CREATE TABLE simple_table (id bigint);
NOTICE: CitusDB partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by CitusDB are not supported yet
NOTICE: Citus partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by Citus are not supported yet
SELECT table_ddl_command_array('not_in_path.simple_table');
table_ddl_command_array
-------------------------------------------------------------------------------------------------

View File

@ -2,7 +2,7 @@
-- MULTI_JOIN_ORDER_ADDITIONAL
--
-- Set configuration to print table join order and pruned shards
SET citusdb.log_multi_join_order TO TRUE;
SET citus.log_multi_join_order TO TRUE;
SET client_min_messages TO DEBUG2;
-- The following query checks that we can correctly handle self-joins
EXPLAIN SELECT l1.l_quantity FROM lineitem l1, lineitem l2
@ -42,7 +42,7 @@ DEBUG: join prunable for intervals [1,2496] and [2497,4964]
(1 row)
-- Update configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
SET client_min_messages TO LOG;
-- The following queries check that we correctly handle joins and OR clauses. In
-- particular, these queries check that we factorize out OR clauses if possible,
@ -106,7 +106,7 @@ LOG: join order: [ "customer" ][ broadcast join "nation" ]
UPDATE pg_dist_partition SET partmethod = 'a' WHERE
logicalrelid = (SELECT relfilenode FROM pg_class WHERE relname = 'customer');
-- Update the large table shard count for all the following tests.
SET citusdb.large_table_shard_count TO 1;
SET citus.large_table_shard_count TO 1;
-- Validate that we don't use a single-partition join method for a hash
-- re-partitioned table, thus preventing a partition of just the customer table.
EXPLAIN SELECT count(*) FROM orders, lineitem, customer

View File

@ -2,13 +2,13 @@
-- MULTI_JOIN_ORDER_TPCH_LARGE
--
-- Enable configuration to print table join order
SET citusdb.log_multi_join_order TO TRUE;
SET citus.log_multi_join_order TO TRUE;
SET client_min_messages TO LOG;
-- Change configuration to treat lineitem, orders, customer, and part tables as
-- large. The following queries are basically the same as the ones in tpch_small
-- except that more data has been staged to customer and part tables. Therefore,
-- we will apply different distributed join strategies for these queries.
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #6 from the TPC-H decision support benchmark
EXPLAIN SELECT
sum(l_extendedprice * l_discount) as revenue

View File

@ -2,10 +2,10 @@
-- MULTI_JOIN_ORDER_TPCH_SMALL
--
-- Enable configuration to print table join order
SET citusdb.log_multi_join_order TO TRUE;
SET citus.log_multi_join_order TO TRUE;
SET client_min_messages TO LOG;
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #6 from the TPC-H decision support benchmark
EXPLAIN SELECT
sum(l_extendedprice * l_discount) as revenue

View File

@ -6,7 +6,7 @@
-- future we want to check for pruning between re-partitioned relations as well.
SET client_min_messages TO DEBUG2;
-- Change configuration to treat all tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
SELECT sum(l_linenumber), avg(l_linenumber) FROM lineitem, orders
WHERE l_orderkey = o_orderkey;
DEBUG: join prunable for intervals [13921,14947] and [1,5986]

View File

@ -8,11 +8,11 @@
BEGIN;
SET client_min_messages TO DEBUG4;
DEBUG: CommitTransactionCommand
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand

View File

@ -8,11 +8,11 @@
BEGIN;
SET client_min_messages TO DEBUG4;
DEBUG: CommitTransactionCommand
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand

View File

@ -4,9 +4,9 @@
-- Tests covering partition and join-pruning for large table joins. Note that we
-- set executor type to task tracker executor here, as we cannot run repartition
-- jobs with real time executor.
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
SET client_min_messages TO DEBUG2;
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
-- Single range-repartition join to test join-pruning behaviour.
SELECT
count(*)

View File

@ -8,11 +8,11 @@
BEGIN;
SET client_min_messages TO DEBUG3;
DEBUG: CommitTransactionCommand
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
@ -52,7 +52,7 @@ DEBUG: CommitTransactionCommand
-- more than one shard. This situation results in multiple sql tasks depending on
-- the same merge task, and tests our constraint group creation and assignment
-- propagation. Here 'orders' is considered the small table.
SET citusdb.large_table_shard_count TO 3;
SET citus.large_table_shard_count TO 3;
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
@ -128,7 +128,7 @@ DEBUG: CommitTransactionCommand
11998
(1 row)
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand

View File

@ -24,7 +24,7 @@ SELECT l_partkey, sum(l_partkey * (1 + l_suppkey)) AS aggregate FROM lineitem
(10 rows)
-- Enable limit optimization to fetch one third of each shard's data
SET citusdb.limit_clause_row_fetch_count TO 600;
SET citus.limit_clause_row_fetch_count TO 600;
SELECT l_partkey, sum(l_partkey * (1 + l_suppkey)) AS aggregate FROM lineitem
GROUP BY l_partkey
ORDER BY aggregate DESC LIMIT 10;
@ -45,7 +45,7 @@ DEBUG: push down of limit count: 600
-- Disable limit optimization for our second test. This time, we have a query
-- that joins several tables, and that groups and orders the results.
RESET citusdb.limit_clause_row_fetch_count;
RESET citus.limit_clause_row_fetch_count;
SELECT c_custkey, c_name, count(*) as lineitem_count
FROM customer, orders, lineitem
WHERE c_custkey = o_custkey AND l_orderkey = o_orderkey
@ -68,8 +68,8 @@ SELECT c_custkey, c_name, count(*) as lineitem_count
-- Now, enable limit optimization to fetch half of each task's results. For this
-- test, we also change a config setting to ensure that we don't repartition any
-- of the tables during the query.
SET citusdb.limit_clause_row_fetch_count TO 150;
SET citusdb.large_table_shard_count TO 2;
SET citus.limit_clause_row_fetch_count TO 150;
SET citus.large_table_shard_count TO 2;
SELECT c_custkey, c_name, count(*) as lineitem_count
FROM customer, orders, lineitem
WHERE c_custkey = o_custkey AND l_orderkey = o_orderkey
@ -90,7 +90,7 @@ DEBUG: push down of limit count: 150
145 | Customer#000000145 | 30
(10 rows)
RESET citusdb.large_table_shard_count;
RESET citus.large_table_shard_count;
-- We now test scenarios where applying the limit optimization wouldn't produce
-- meaningful results. First, we check that we don't push down the limit clause
-- for non-commutative aggregates.
@ -147,5 +147,5 @@ SELECT count(*) count_quantity, l_quantity FROM lineitem WHERE l_quantity < 10.0
258 | 9.00
(9 rows)
RESET citusdb.limit_clause_row_fetch_count;
RESET citus.limit_clause_row_fetch_count;
RESET client_min_messages;

View File

@ -91,7 +91,7 @@ INSERT INTO append_partitioned VALUES (414123, 'AAPL', 9580, '2004-10-19 10:23:5
20.69);
-- ensure the values are where we put them and query to ensure they are properly pruned
SET client_min_messages TO 'DEBUG2';
SET citusdb.task_executor_type TO 'router';
SET citus.task_executor_type TO 'router';
SELECT * FROM range_partitioned WHERE id = 32743;
DEBUG: predicate pruning for shardId 103070
id | symbol | bidder_id | placed_at | kind | limit_price
@ -107,7 +107,7 @@ DEBUG: predicate pruning for shardId 103072
(1 row)
SET client_min_messages TO DEFAULT;
SET citusdb.task_executor_type TO DEFAULT;
SET citus.task_executor_type TO DEFAULT;
-- try inserting without a range-partitioned shard to receive the value
INSERT INTO range_partitioned VALUES (999999, 'AAPL', 9580, '2004-10-19 10:23:54', 'buy',
20.69);

View File

@ -5,7 +5,7 @@
-- and that we don't partition or join prune shards that have null values.
SET client_min_messages TO DEBUG2;
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
SELECT shardminvalue, shardmaxvalue from pg_dist_shard WHERE shardid = 102009;
shardminvalue | shardmaxvalue
---------------+---------------

View File

@ -173,7 +173,7 @@ BEGIN
l_year;
END;
$$ LANGUAGE plpgsql;
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
SET client_min_messages TO INFO;
-- now, run plain SQL functions
SELECT sql_test_no_1();
@ -313,7 +313,7 @@ SELECT plpgsql_test_2();
-- run the tests which do not require re-partition
-- with real-time executor
SET citusdb.task_executor_type TO 'real-time';
SET citus.task_executor_type TO 'real-time';
-- now, run plain SQL functions
SELECT sql_test_no_1();
sql_test_no_1

View File

@ -95,7 +95,7 @@ ORDER BY
supp_nation,
cust_nation,
l_year;
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
SET client_min_messages TO INFO;
-- execute prepared statements
EXECUTE prepared_test_1;
@ -217,7 +217,7 @@ SELECT * from prepared_sql_test_7;
(1 row)
-- now, run some of the tests with real-time executor
SET citusdb.task_executor_type TO 'real-time';
SET citus.task_executor_type TO 'real-time';
-- execute prepared statements
EXECUTE prepared_test_1;
count

View File

@ -3,23 +3,23 @@
-- ===================================================================
CREATE FUNCTION prune_using_no_values(regclass)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION prune_using_single_value(regclass, text)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C;
CREATE FUNCTION prune_using_either_value(regclass, text, text)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION prune_using_both_values(regclass, text, text)
RETURNS text[]
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
CREATE FUNCTION debug_equality_expression(regclass)
RETURNS cstring
AS 'citusdb'
AS 'citus'
LANGUAGE C STRICT;
-- ===================================================================
-- test shard pruning functionality

View File

@ -169,7 +169,7 @@ SELECT title, author_id FROM articles
(10 rows)
-- add in some grouping expressions, still on same shard
-- having queries unsupported in CitusDB
-- having queries unsupported in Citus
SELECT author_id, sum(word_count) AS corpus_size FROM articles
WHERE author_id = 1 OR author_id = 7 OR author_id = 8 OR author_id = 10
GROUP BY author_id
@ -190,7 +190,7 @@ ERROR: cannot plan queries that include both regular and partitioned relations
SELECT * FROM articles, position('om' in 'Thomas');
ERROR: cannot perform distributed planning on this query
DETAIL: Complex table expressions are currently unsupported
-- subqueries are not supported in WHERE clause in CitusDB
-- subqueries are not supported in WHERE clause in Citus
SELECT * FROM articles WHERE author_id IN (SELECT id FROM authors WHERE name LIKE '%a');
ERROR: cannot plan queries that include both regular and partitioned relations
-- subqueries are supported in FROM clause
@ -285,7 +285,7 @@ SELECT COUNT(*) FROM articles;
50
(1 row)
-- having queries unsupported in CitusDB
-- having queries unsupported in Citus
SELECT author_id, sum(word_count) AS corpus_size FROM articles
GROUP BY author_id
HAVING sum(word_count) > 25000
@ -293,17 +293,17 @@ SELECT author_id, sum(word_count) AS corpus_size FROM articles
LIMIT 5;
ERROR: cannot perform distributed planning on this query
DETAIL: Having qual is currently unsupported
-- more proof CitusDB doesn't support having clauses
-- more proof Citus doesn't support having clauses
SELECT author_id FROM articles
GROUP BY author_id
HAVING sum(word_count) > 50000
ORDER BY author_id;
ERROR: cannot perform distributed planning on this query
DETAIL: Having qual is currently unsupported
-- now, test the cases where CitusDB do or do not need to create
-- now, test the cases where Citus do or do not need to create
-- the master queries
SET citusdb.task_executor_type TO 'router';
SET citusdb.large_table_shard_count TO 2;
SET citus.task_executor_type TO 'router';
SET citus.large_table_shard_count TO 2;
SET client_min_messages TO 'DEBUG2';
-- start with the simple lookup query
SELECT *
@ -338,7 +338,7 @@ SELECT *
FROM articles
WHERE author_id = 1 OR author_id = 18;
ERROR: cannot use router executor with queries that hit multiple shards
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- rename the output columns on a no master query case
SELECT id as article_id, word_count * id as random_value
FROM articles
@ -377,7 +377,7 @@ SELECT a.author_id as first_author, b.word_count as second_word_count
DEBUG: push down of limit count: 3
DEBUG: predicate pruning for shardId 103094
ERROR: cannot use router executor with JOINs
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- do not create the master query for LIMIT on a single shard SELECT
SELECT *
FROM articles
@ -417,7 +417,7 @@ SELECT avg(word_count)
WHERE author_id = 2;
DEBUG: predicate pruning for shardId 103093
ERROR: cannot use router executor with aggregates
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- max, min, sum, count is somehow implemented
-- differently in distributed planning but, still error out
SELECT max(word_count) as max, min(word_count) as min,
@ -426,7 +426,7 @@ SELECT max(word_count) as max, min(word_count) as min,
WHERE author_id = 2;
DEBUG: predicate pruning for shardId 103093
ERROR: cannot use router executor with aggregates
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- error out for queries with ORDER BY
SELECT *
FROM articles
@ -434,7 +434,7 @@ SELECT *
ORDER BY word_count;
DEBUG: predicate pruning for shardId 103094
ERROR: cannot use router executor with ORDER BY clauses
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- error out for queries with ORDER BY and LIMIT
SELECT *
FROM articles
@ -444,7 +444,7 @@ SELECT *
DEBUG: push down of limit count: 2
DEBUG: predicate pruning for shardId 103094
ERROR: cannot use router executor with ORDER BY clauses
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- error out for queries with aggregates and GROUP BY
SELECT max(word_count)
FROM articles
@ -452,7 +452,7 @@ SELECT max(word_count)
GROUP BY author_id;
DEBUG: predicate pruning for shardId 103094
ERROR: cannot use router executor with aggregates
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
-- error out for queries with repartition jobs
SELECT *
FROM articles a, articles b
@ -487,12 +487,12 @@ DETAIL: Creating dependency on merge taskId 9
DEBUG: pruning merge fetch taskId 11
DETAIL: Creating dependency on merge taskId 14
ERROR: cannot use router executor with repartition jobs
HINT: Set citusdb.task_executor_type to "task-tracker".
HINT: Set citus.task_executor_type to "task-tracker".
-- error out for queries which hit more than 1 shards
SELECT *
FROM articles
WHERE author_id >= 1 AND author_id <= 3;
ERROR: cannot use router executor with queries that hit multiple shards
HINT: Set citusdb.task_executor_type to "real-time" or "task-tracker".
HINT: Set citus.task_executor_type to "real-time" or "task-tracker".
SET client_min_messages to 'NOTICE';
SET citusdb.task_executor_type TO 'real-time';
SET citus.task_executor_type TO 'real-time';

View File

@ -2,7 +2,7 @@
-- MULTI_SINGLE_RELATION_SUBQUERY
--
-- This test checks that we are able to run selected set of distributed SQL subqueries.
SET citusdb.task_executor_type TO 'task-tracker';
SET citus.task_executor_type TO 'task-tracker';
select
number_sum,
count(*) as total,

View File

@ -9,12 +9,12 @@ SELECT master_create_distributed_table('testtableddl', 'distributecol', 'append'
(1 row)
-- verify that the citusdb extension can't be dropped while distributed tables exist
DROP EXTENSION citusdb;
-- verify that the citus extension can't be dropped while distributed tables exist
DROP EXTENSION citus;
WARNING: could not clean the metadata cache on DROP EXTENSION command
HINT: Reconnect to the server again.
ERROR: cannot drop extension citusdb because other objects depend on it
DETAIL: table testtableddl depends on extension citusdb
ERROR: cannot drop extension citus because other objects depend on it
DETAIL: table testtableddl depends on extension citus
HINT: Use DROP ... CASCADE to drop the dependent objects too.
-- verify that the distribution column can't have its type changed
ALTER TABLE testtableddl ALTER COLUMN distributecol TYPE text;
@ -63,8 +63,8 @@ SELECT * FROM pg_dist_shard_placement;
-- check that the extension now can be dropped (and recreated). We reconnect
-- before creating the extension to expire extension specific variables which
-- are cached for performance.
DROP EXTENSION citusdb;
DROP EXTENSION citus;
WARNING: could not clean the metadata cache on DROP EXTENSION command
HINT: Reconnect to the server again.
\c
CREATE EXTENSION citusdb;
CREATE EXTENSION citus;

View File

@ -46,7 +46,7 @@ BEGIN;
SET client_min_messages TO DEBUG3;
DEBUG: CommitTransactionCommand
-- First test the default greedy task assignment policy
SET citusdb.task_assignment_policy TO 'greedy';
SET citus.task_assignment_policy TO 'greedy';
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
@ -75,7 +75,7 @@ DEBUG: CommitTransactionCommand
(1 row)
-- Next test the first-replica task assignment policy
SET citusdb.task_assignment_policy TO 'first-replica';
SET citus.task_assignment_policy TO 'first-replica';
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
@ -118,7 +118,7 @@ DEBUG: CommitTransactionCommand
(1 row)
-- Finally test the round-robin task assignment policy
SET citusdb.task_assignment_policy TO 'round-robin';
SET citus.task_assignment_policy TO 'round-robin';
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand
@ -158,7 +158,7 @@ DEBUG: CommitTransactionCommand
explain statements for distributed queries are currently unsupported
(1 row)
RESET citusdb.task_assignment_policy;
RESET citus.task_assignment_policy;
DEBUG: StartTransactionCommand
DEBUG: ProcessUtility
DEBUG: CommitTransactionCommand

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY1
--
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #1 from the TPC-H decision support benchmark
SELECT
l_returnflag,

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY10
--
-- Query #10 from the TPC-H decision support benchmark. Unlike other TPC-H tests,
-- we don't set citusdb.large_table_shard_count here, and instead use the default value
-- we don't set citus.large_table_shard_count here, and instead use the default value
-- coming from postgresql.conf or multi_task_tracker_executor.conf.
SELECT
c_custkey,

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY12
--
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #12 from the TPC-H decision support benchmark
SELECT
l_shipmode,

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY14
--
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #14 from the TPC-H decision support benchmark
SELECT
100.00 * sum(case

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY19
--
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #19 from the TPC-H decision support benchmark. Note that we modified
-- the query from its original to make it work on smaller data sets.
SELECT

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY3
--
-- Query #3 from the TPC-H decision support benchmark. Unlike other TPC-H tests,
-- we don't set citusdb.large_table_shard_count here, and instead use the default value
-- we don't set citus.large_table_shard_count here, and instead use the default value
-- coming from postgresql.conf or multi_task_tracker_executor.conf.
SELECT
l_orderkey,

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY6
--
-- Change configuration to treat lineitem and orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #6 from the TPC-H decision support benchmark
SELECT
sum(l_extendedprice * l_discount) as revenue

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY7
--
-- Change configuration to treat lineitem AND orders tables as large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #7 from the TPC-H decision support benchmark
SELECT
supp_nation,

View File

@ -2,7 +2,7 @@
-- MULTI_TPCH_QUERY7_NESTED
--
-- Change configuration to treat lineitem AND orders tables AS large
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
-- Query #7 from the TPC-H benchmark; modified to include sub-selects
SELECT
supp_nation,

View File

@ -1,4 +1,4 @@
-- this test file aims to test UPSERT feature on CitusDB
-- this test file aims to test UPSERT feature on Citus
-- note that output of this file for postgresql 9.4 will
-- be full syntax errors, which is expected.
CREATE TABLE upsert_test
@ -124,7 +124,7 @@ SELECT master_create_worker_shards('upsert_test_2', '4', '2');
(1 row)
-- now show that CitusDB works with multiple columns as the PRIMARY KEY, including the partiton key
-- now show that Citus works with multiple columns as the PRIMARY KEY, including the partiton key
INSERT INTO upsert_test_2 (part_key, other_col) VALUES (1, 1);
INSERT INTO upsert_test_2 (part_key, other_col) VALUES (1, 1) ON CONFLICT (part_key, other_col) DO NOTHING;
-- this errors out since there is no unique constraint on partition key
@ -214,7 +214,7 @@ INSERT INTO dropcol_distributed AS dropcol (key, keep1) VALUES (1, '5') ON CONFL
ALTER TABLE dropcol_distributed DROP COLUMN drop1;
INSERT INTO dropcol_distributed AS dropcol (key, keep1) VALUES (1, '5') ON CONFLICT(key)
DO UPDATE SET keep1 = dropcol.keep1;
-- below we test the cases that CitusDB does not support
-- below we test the cases that Citus does not support
-- subquery in the SET clause
INSERT INTO upsert_test (part_key, other_col) VALUES (1, 1) ON CONFLICT (part_key) DO
UPDATE SET other_col = (SELECT count(*) from upsert_test);

View File

@ -1,4 +1,4 @@
-- this test file aims to test UPSERT feature on CitusDB
-- this test file aims to test UPSERT feature on Citus
-- note that output of this file for postgresql 9.4 will
-- be full syntax errors, which is expected.
CREATE TABLE upsert_test
@ -157,7 +157,7 @@ SELECT master_create_worker_shards('upsert_test_2', '4', '2');
(1 row)
-- now show that CitusDB works with multiple columns as the PRIMARY KEY, including the partiton key
-- now show that Citus works with multiple columns as the PRIMARY KEY, including the partiton key
INSERT INTO upsert_test_2 (part_key, other_col) VALUES (1, 1);
INSERT INTO upsert_test_2 (part_key, other_col) VALUES (1, 1) ON CONFLICT (part_key, other_col) DO NOTHING;
ERROR: syntax error at or near "ON"
@ -284,7 +284,7 @@ INSERT INTO dropcol_distributed AS dropcol (key, keep1) VALUES (1, '5') ON CONFL
ERROR: syntax error at or near "AS"
LINE 1: INSERT INTO dropcol_distributed AS dropcol (key, keep1) VALU...
^
-- below we test the cases that CitusDB does not support
-- below we test the cases that Citus does not support
-- subquery in the SET clause
INSERT INTO upsert_test (part_key, other_col) VALUES (1, 1) ON CONFLICT (part_key) DO
UPDATE SET other_col = (SELECT count(*) from upsert_test);

View File

@ -38,7 +38,7 @@ SELECT * FROM lineitem_pricing_summary ORDER BY l_returnflag, l_linestatus;
(4 rows)
-- Test we can handle joins
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
CREATE TABLE shipping_priority AS
(
SELECT

View File

@ -4,15 +4,15 @@
-- Tests to check if we inform the user about potential caveats of creating new
-- databases, schemas, and roles.
CREATE DATABASE new_database;
NOTICE: CitusDB partially supports CREATE DATABASE for distributed databases
DETAIL: CitusDB does not propagate CREATE DATABASE command to workers
NOTICE: Citus partially supports CREATE DATABASE for distributed databases
DETAIL: Citus does not propagate CREATE DATABASE command to workers
HINT: You can manually create a database and its extensions on workers.
CREATE SCHEMA new_schema;
NOTICE: CitusDB partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by CitusDB are not supported yet
NOTICE: Citus partially supports CREATE SCHEMA for distributed databases
DETAIL: schema usage in joins and in some UDFs provided by Citus are not supported yet
CREATE ROLE new_role;
NOTICE: CitusDB does not support CREATE ROLE/USER for distributed databases
NOTICE: Citus does not support CREATE ROLE/USER for distributed databases
DETAIL: Multiple roles are currently supported only for local tables
CREATE USER new_user;
NOTICE: CitusDB does not support CREATE ROLE/USER for distributed databases
NOTICE: Citus does not support CREATE ROLE/USER for distributed databases
DETAIL: Multiple roles are currently supported only for local tables

View File

@ -35,14 +35,14 @@ SELECT avg(distinct l_orderkey) FROM lineitem_range;
-- sharded table. For this test, we also change a config setting to ensure that
-- we don't repartition any of the tables during the query.
SET citusdb.large_table_shard_count TO 2;
SET citus.large_table_shard_count TO 2;
SELECT p_partkey, count(distinct l_orderkey) FROM lineitem_range, part
WHERE l_partkey = p_partkey
GROUP BY p_partkey
ORDER BY p_partkey LIMIT 10;
RESET citusdb.large_table_shard_count;
RESET citus.large_table_shard_count;
-- Check that we don't support count(distinct) on non-partition column, and
-- complex expressions.

View File

@ -17,16 +17,16 @@ CREATE TABLE multi_append_table_to_shard_left
SELECT master_create_distributed_table('multi_append_table_to_shard_left', 'left_number', 'append');
-- Replicate 'left' table on both workers
SELECT set_config('citusdb.shard_replication_factor', '2', false);
SELECT set_config('citus.shard_replication_factor', '2', false);
\STAGE multi_append_table_to_shard_left FROM '@abs_srcdir@/data/agg.data'
\STAGE multi_append_table_to_shard_left FROM '@abs_srcdir@/data/agg.data'
-- Place 'right' table only on the primary worker
SELECT set_config('citusdb.shard_replication_factor', '1', false);
SELECT set_config('citus.shard_replication_factor', '1', false);
\STAGE multi_append_table_to_shard_right FROM '@abs_srcdir@/data/agg.data'
-- Reset shard replication factor to ensure tasks will be assigned to both workers
SELECT set_config('citusdb.shard_replication_factor', '2', false);
SELECT set_config('citus.shard_replication_factor', '2', false);
-- All 8 rows in left table match a row in right table
SELECT COUNT(*)

View File

@ -10,7 +10,7 @@
\STAGE orders FROM '@abs_srcdir@/data/orders.1.data'
\STAGE orders FROM '@abs_srcdir@/data/orders.2.data'
SELECT set_config('citusdb.shard_replication_factor', '1', false);
SELECT set_config('citus.shard_replication_factor', '1', false);
\STAGE customer FROM '@abs_srcdir@/data/customer.1.data'
\STAGE nation FROM '@abs_srcdir@/data/nation.data'

Some files were not shown because too many files have changed in this diff Show More