Contents
-
-
- citus v7.0.1 (September 12, 2017)
- citus v7.0.0 (August 28, 2017)
- citus v6.2.3 (July 13, 2017)
- citus v6.2.2 (May 31, 2017)
- citus v6.2.1 (May 24, 2017)
- citus v6.2.0 (May 16, 2017)
- citus v6.1.2 (May 31, 2017)
- citus v6.1.1 (May 5, 2017)
- citus v6.1.0 (February 9, 2017)
- citus v6.0.1 (November 29, 2016)
- citus v6.0.0 (November 7, 2016)
- citus v5.2.2 (November 7, 2016)
- citus v5.2.1 (September 6, 2016)
- citus v5.2.0 (August 15, 2016)
- citus v5.2.0-rc.1 (August 1, 2016)
- citus v5.1.1 (June 17, 2016)
- citus v5.1.0 (May 17, 2016)
- citus v5.1.0-rc.2 (May 10, 2016)
- citus v5.1.0-rc.1 (May 4, 2016)
- citus v5.0.1 (April 15, 2016)
- citus v5.0.0 (March 24, 2016)
-
citus v7.0.1 (September 12, 2017)
Fixes a bug that could cause memory leaks in
INSERT ... SELECT
queriesFixes a bug that could cause incorrect execution of prepared statements
Fixes a bug that could cause excessive memory usage during COPY
Incorporates latest changes from core PostgreSQL code
citus v7.0.0 (August 28, 2017)
Adds support for PostgreSQL 10
Drops support for PostgreSQL 9.5
Adds support for multi-row
INSERT
Adds support for router
UPDATE
andDELETE
queries with subqueriesAdds infrastructure for distributed deadlock detection
Deprecates
enable_deadlock_prevention
flagAdds support for partitioned tables
Adds support for creating
UNLOGGED
tablesAdds support for
SAVEPOINT
Adds UDF
citus_create_restore_point
for taking distributed snapshotsAdds support for evaluating non-pushable
INSERT ... SELECT
queriesAdds support for subquery pushdown on reference tables
Adds shard pruning support for
IN
andANY
Adds support for
UPDATE
andDELETE
commands that prune down to 0 shardEnhances transaction support by relaxing some transaction restrictions
Fixes a bug causing crash if distributed table has no shards
Fixes a bug causing crash when removing inactive node
Fixes a bug causing failure during
COPY
on tables with dropped columnsFixes a bug causing failure during
DROP EXTENSION
Fixes a bug preventing executing
VACUUM
andINSERT
concurrentlyFixes a bug in prepared
INSERT
statements containing an implicit castFixes several issues related to statement cancellations and connections
Fixes several 2PC related issues
Removes an unnecessary dependency causing warning messages in pg_dump
Adds internal infrastructure for follower clusters
Adds internal infrastructure for progress tracking
Implements various performance improvements
Adds internal infrastructures and tests to improve development process
Addresses various race conditions and deadlocks
Improves and standardizes error messages
citus v6.2.3 (July 13, 2017)
Fixes a crash during execution of local CREATE INDEX CONCURRENTLY
Fixes a bug preventing usage of quoted column names in COPY
Fixes a bug in prepared INSERTs with implicit cast in partition column
Relaxes locks in VACUUM to ensure concurrent execution with INSERT
citus v6.2.2 (May 31, 2017)
- Fixes a common cause of deadlocks when repairing tables with foreign keys
citus v6.2.1 (May 24, 2017)
- Relaxes version-check logic to avoid breaking non-distributed commands
citus v6.2.0 (May 16, 2017)
Increases SQL subquery coverage by pushing down more kinds of queries
Adds CustomScan API support to allow read-only transactions
Adds support for
CREATE/DROP INDEX CONCURRENTLY
Adds support for
ALTER TABLE ... ADD CONSTRAINT
Adds support for
ALTER TABLE ... RENAME COLUMN
Adds support for
DISABLE/ENABLE TRIGGER ALL
Adds support for expressions in the partition column in INSERTs
Adds support for query parameters in combination with function evaluation
Adds support for creating distributed tables from non-empty local tables
Adds UDFs to get size of distributed tables
Adds UDFs to add a new node without replicating reference tables
Adds checks to prevent running Citus binaries with wrong metadata tables
Improves shard pruning performance for range queries
Improves planner performance for joins involving co-located tables
Improves shard copy performance by creating indexes after copy
Improves task-tracker performance by batching several status checks
Enables router planner for queries on range partitioned table
Changes
TRUNCATE
to drop local data only ifenable_ddl_propagation
is offStarts to execute DDL on coordinator before workers
Fixes a bug causing incorrectly reading invalidated cache
Fixes a bug related to creation of schemas of in workers with incorrect owner
Fixes a bug related to concurrent run of shard drop functions
Fixes a bug related to
EXPLAIN ANALYZE
with DML queriesFixes a bug related to SQL functions in FROM clause
Adds a GUC variable to report cross shard queries
Fixes a bug related to partition columns without native hash function
Adds internal infrastructures and tests to improve development process
Addresses various race conditions and deadlocks
Improves and standardizes error messages
citus v6.1.2 (May 31, 2017)
- Fixes a common cause of deadlocks when repairing tables with foreign keys
citus v6.1.1 (May 5, 2017)
Fixes a crash caused by router executor use after connection timeouts
Fixes a crash caused by relation cache invalidation during COPY
Fixes bug related to DDL use within PL/pgSQL functions
Fixes a COPY bug related to types lacking binary output functions
Fixes a bug related to modifications with parameterized partition values
Fixes improper value interpolation in worker sequence generation
Guards shard pruning logic against zero-shard tables
Fixes possible NULL pointer dereference and buffer underflow (via PVS-Studio)
Fixes a INSERT ... SELECT bug that could push down non-partition column JOINs
citus v6.1.0 (February 9, 2017)
Implements reference tables, transactionally replicated to all nodes
Adds
upgrade_to_reference_table
UDF to upgrade pre-6.1 reference tablesExpands prepared statement support to nearly all statements
Adds support for creating
VIEW
s which reference distributed tablesAdds targeted
VACUUM
/ANALYZE
supportAdds support for the
FILTER
clause in aggregate expressionsAdds support for function evaluation within
INSERT INTO ... SELECT
Adds support for creating foreign key constraints with
ALTER TABLE
Adds logic to choose router planner for all queries it supports
Enhances
create_distributed_table
with parameter for explicit colocationAdds generally useful utility UDFs previously available as "Citus Tools"
Adds user-facing UDFs for locking shard resources and metadata
Refactors connection and transaction management; giving a consistent experience
Enhances
COPY
with fully transactional semanticsImproves support for cancellation for a number of queries and commands
Adds
column_to_column_name
UDF to help users understandpartkey
valuesAdds
master_disable_node
UDF for temporarily disabling nodesAdds proper MX ("masterless") metadata propagation logic
Adds
start_metadata_sync_to_node
UDF to propagate metadata changes to nodesEnhances
SERIAL
compatibility with MX tablesAdds an
node_connection_timeout
parameter to control node connection timeoutsAdds
enable_deadlock_prevention
setting to permit multi-node transactionsAdds a
replication_model
setting to specify replication of new tablesChanges the
shard_replication_factor
setting's default value to oneAdds code to automatically set
max_prepared_transactions
if not configuredAccelerates lookup of colocated shard placements
Fixes a bug affecting
INSERT INTO ... SELECT
queries using constant valuesFixes a bug by ensuring
COPY
does not mark placements inactiveFixes a bug affecting reads from
pg_dist_shard_placement
tableFixes a crash triggered by creating a foreign key without a column
Fixes a crash related to accessing catalog tables after aborted transactions
Fixes a bug affecting JOIN queries requiring repartitions
Fixes a bug affecting node insertions to
pg_dist_node
tableFixes a crash triggered by queries with modifying common table expressions
Fixes a bug affecting workloads with concurrent shard appends and deletions
Addresses various race conditions and deadlocks
Improves and standardizes error messages
citus v6.0.1 (November 29, 2016)
Fixes a bug causing failures during pg_upgrade
Fixes a bug preventing DML queries during colocated table creation
Fixes a bug that caused NULL parameters to be incorrectly passed as text
citus v6.0.0 (November 7, 2016)
Adds compatibility with PostgreSQL 9.6, now the recommended version
Removes the
pg_worker_list.conf
file in favor of apg_dist_node
tableAdds
master_add_node
andmaster_add_node
UDFs to manage membershipRemoves the
\stage
command and corresponding csql binary in favor ofCOPY
Removes
copy_to_distributed_table
in favor of first-classCOPY
supportAdds support for multiple DDL statements within a transaction
Adds support for certain foreign key constraints
Adds support for parallel
INSERT INTO ... SELECT
against colocated tablesAdds support for the
TRUNCATE
commandAdds support for
HAVING
clauses inSELECT
queriesAdds support for
EXCLUDE
constraints which include the partition columnAdds support for system columns in queries (
tableoid
,ctid
, etc.)Adds support for relation name extension within
INDEX
definitionsAdds support for no-op
UPDATE
s of the partition columnAdds several general-purpose utility UDFs to aid in Citus maintenance
Adds
master_expire_table_cache
UDF to forcibly expire cached shardsParallelizes the processing of DDL commands which affect distributed tables
Adds support for repartition jobs using composite or custom types
Enhances object name extension to handle long names and large shard counts
Parallelizes the
master_modify_multiple_shards
UDFChanges distributed table creation to error if the target table is not empty
Changes the
pg_dist_shard.logicalrelid
column from anoid
toregclass
Adds a
placementid
column topg_dist_shard_placement
, replacing Oid useRemoves the
pg_dist_shard.shardalias
distribution metadata columnAdds
pg_dist_partition.repmodel
to track tables using streaming replicationAdds internal infrastructure to take snapshots of distribution metadata
Addresses the need to invalidate prepared statements on metadata changes
Adds a
mark_tables_colocated
UDF for denoting pre-6.0 manual colocationFixes a bug affecting prepared statement execution within PL/pgSQL
Fixes a bug affecting
COPY
commands using composite typesFixes a bug that could cause crashes during
EXPLAIN EXECUTE
Separates worker and master job temporary folders
Eliminates race condition between distributed modification and repair
Relaxes the requirement that shard repairs also repair colocated shards
Implements internal functions to track which tables' shards are colocated
Adds
pg_dist_partition.colocationid
to track colocation group membershipExtends shard copy and move operations to respect colocation settings
Adds
pg_dist_local_group
to prepare for future MX-related changesAdds
create_distributed_table
to easily create shards and infer colocation
citus v5.2.2 (November 7, 2016)
Adds support for
IF NOT EXISTS
clause ofCREATE INDEX
commandAdds support for
RETURN QUERY
andFOR ... IN
PL/pgSQL featuresExtends the router planner to handle more queries
Changes
COUNT
of zero-row sets to return0
rather than an empty resultReduces the minimum permitted
task_tracker_delay
to a single millisecondFixes a bug that caused crashes during joins with a
WHERE false
clauseFixes a bug triggered by unique violation errors raised in long transactions
Fixes a bug resulting in multiple registration of transaction callbacks
Fixes a bug which could result in stale reads of distribution metadata
Fixes a bug preventing distributed modifications in some PL/pgSQL functions
Fixes some code paths that could hypothetically read uninitialized memory
Lowers log level of waiting for activity messages
citus v5.2.1 (September 6, 2016)
Fixes subquery pushdown to properly extract outer join qualifiers
Addresses possible memory leak during multi-shard transactions
citus v5.2.0 (August 15, 2016)
Drops support for PostgreSQL 9.4; PostgreSQL 9.5 is required
Adds schema support for tables, other named objects (types, operators, etc.)
Evaluates non-immutable functions on master in all modification commands
Adds support for SERIAL types in non-partition columns
Adds support for RETURNING clause in INSERT, UPDATE, and DELETE commands
Adds support for multi-statement transactions involving a fixed set of nodes
Full SQL support for SELECT queries which can be executed on a single worker
Adds option to perform DDL changes using prepared transactions (2PC)
Adds an
enable_ddl_propagation
parameter to control DDL propagationAccelerates shard pruning during merges
Adds
master_modify_multiple_shards
UDF to modify many shards at onceAdds COPY support for arrays of user-defined types
Now supports parameterized prepared statements for certain use cases
Extends LIMIT/OFFSET support to all executor types
Constraint violations now fail fast rather than hitting all placements
Makes
master_create_empty_shard
aware of shard placement policyReduces unnecessary sleep during queries processed by real-time executor
Improves task tracker executor's task cleanup logic
Relaxes restrictions on cancellation of DDL commands
Removes ONLY keyword from worker SELECT queries
Error message improvements and standardization
Moves
master_update_shard_statistics
function topg_catalog
schemaFixes a bug where hash-partitioned anti-joins could return incorrect results
Now sets storage type correctly for foreign table-backed shards
Fixes
master_update_shard_statistics
issue with hash-partitioned tablesFixes an issue related to extending table names that require escaping
Reduces risk of row counter overflows during modifications
Fixes a crash related to FILTER clause use in COUNT DISTINCT subqueries
Fixes crashes related to partition columns with high attribute numbers
Fixes certain subquery and join crashes
Detects flex for build even if PostgreSQL was built without it
Fixes assert-enabled crash when
all_modifications_commutative
is true
citus v5.2.0-rc.1 (August 1, 2016)
- Initial 5.2.0 candidate
citus v5.1.1 (June 17, 2016)
Adds complex count distinct expression support in repartitioned subqueries
Improves task tracker job cleanup logic, addressing a memory leak
Fixes bug that generated incorrect results for LEFT JOIN queries
Improves compatibility with Debian's reproducible builds project
Fixes build issues on FreeBSD platforms
citus v5.1.0 (May 17, 2016)
Adds distributed COPY to rapidly populate distributed tables
Adds support for using EXPLAIN on distributed queries
Recognizes and fast-paths single-shard SELECT statements automatically
Increases INSERT throughput via shard pruning optimizations
Improves planner performance for joins involving tables with many shards
Adds ability to pass columns as arguments to function calls in UPDATEs
Introduces transaction manager for use by multi-shard commands
Adds COUNT(DISTINCT ...) pushdown optimization for hash-partitioned tables
Adds support for certain UNIQUE indexes on hash- or range-partitioned tables
Deprecates \stage in favor of using COPY for append-partition tables
Deprecates
copy_to_distributed_table
in favor of first-class COPY supportFixes build problems when using non-packaged PostgreSQL installs
Fixes bug that sometimes skipped pruning when partitioned by a VARCHAR column
Fixes bug impeding use of user-defined functions in repartitioned subqueries
Fixes bug involving queries with equality comparisons of boolean types
Fixes crash that prevented use alongside
pg_stat_statements
Fixes crash arising from SELECT queries that lack a target list
Improves warning and error messages
citus v5.1.0-rc.2 (May 10, 2016)
Fixes test failures
Fixes EXPLAIN output when FORMAT JSON in use
citus v5.1.0-rc.1 (May 4, 2016)
- Initial 5.1.0 candidate
citus v5.0.1 (April 15, 2016)
- Fixes issues on 32-bit systems
citus v5.0.0 (March 24, 2016)
Public release under AGPLv3
PostgreSQL extension compatible with PostgreSQL 9.5 and 9.4