diff --git a/README.md b/README.md
index c88034fba..59d647219 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-
+
diff --git a/charts/paradedb/Chart.yaml b/charts/paradedb/Chart.yaml
index f29d40162..71a7e1620 100644
--- a/charts/paradedb/Chart.yaml
+++ b/charts/paradedb/Chart.yaml
@@ -20,8 +20,8 @@ icon: https://raw.githubusercontent.com/paradedb/paradedb/main/docs/logo/light.s
type: application
# The Chart version, set in the publish CI workflow from GitHub Actions Variables
-# We default to v0.13.2 for testing and local development
-version: 0.13.2
+# We default to v0.14.0 for testing and local development
+version: 0.14.0
sources:
- https://github.com/paradedb/charts
diff --git a/charts/paradedb/README.md b/charts/paradedb/README.md
index 9dff3421b..8d161740d 100644
--- a/charts/paradedb/README.md
+++ b/charts/paradedb/README.md
@@ -311,7 +311,7 @@ refer to the [CloudNativePG Documentation](https://cloudnative-pg.io/documentat
| recovery.secret.create | bool | `true` | Whether to create a secret for the backup credentials |
| recovery.secret.name | string | `""` | Name of the backup credentials secret |
| type | string | `"paradedb"` | Type of the CNPG database. Available types: * `paradedb` * `paradedb-enterprise` |
-| version.paradedb | string | `"0.13.2"` | We default to v0.13.2 for testing and local development |
+| version.paradedb | string | `"0.14.0"` | We default to v0.14.0 for testing and local development |
| version.postgresql | string | `"17"` | PostgreSQL major version to use |
| poolers[].name | string | `` | Name of the pooler resource |
| poolers[].instances | number | `1` | The number of replicas we want |
diff --git a/charts/paradedb/examples/image-catalog-ref.yaml b/charts/paradedb/examples/image-catalog-ref.yaml
index 5780d5591..6e1c8eaa6 100644
--- a/charts/paradedb/examples/image-catalog-ref.yaml
+++ b/charts/paradedb/examples/image-catalog-ref.yaml
@@ -2,7 +2,7 @@ type: postgresql
mode: standalone
version:
major: "17"
- paradedb: "0.13.2"
+ paradedb: "0.14.0"
cluster:
instances: 1
imageCatalogRef:
diff --git a/charts/paradedb/examples/image-catalog.yaml b/charts/paradedb/examples/image-catalog.yaml
index e26bc78ca..0372409de 100644
--- a/charts/paradedb/examples/image-catalog.yaml
+++ b/charts/paradedb/examples/image-catalog.yaml
@@ -2,7 +2,7 @@ type: postgresql
mode: standalone
version:
major: "17"
- paradedb: "0.13.2"
+ paradedb: "0.14.0"
cluster:
instances: 1
backups:
diff --git a/charts/paradedb/examples/paradedb.yaml b/charts/paradedb/examples/paradedb.yaml
index d2e12c860..c1eb18378 100644
--- a/charts/paradedb/examples/paradedb.yaml
+++ b/charts/paradedb/examples/paradedb.yaml
@@ -2,7 +2,7 @@ type: paradedb
mode: standalone
version:
postgresql: "17"
- paradedb: "0.13.2"
+ paradedb: "0.14.0"
cluster:
instances: 1
backups:
diff --git a/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster-assert.yaml b/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster-assert.yaml
index 75c7d8771..06a0cf81b 100644
--- a/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster-assert.yaml
+++ b/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster-assert.yaml
@@ -3,4 +3,4 @@ kind: Cluster
metadata:
name: paradedb-ncc-1701-d
status:
- readyInstances: 1
+ readyInstances: 2
diff --git a/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster.yaml b/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster.yaml
index 435f2c86f..e8a3e34b3 100644
--- a/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster.yaml
+++ b/charts/paradedb/test/paradedb-enterprise/01-paradedb-NCC-1701-D_cluster.yaml
@@ -2,9 +2,9 @@ type: paradedb-enterprise
mode: standalone
version:
major: "17"
- paradedb: "0.13.2"
+ paradedb: "0.14.0"
cluster:
- instances: 1
+ instances: 2
storage:
size: 256Mi
imagePullSecrets:
diff --git a/charts/paradedb/test/paradedb-enterprise/02-paradedb_test.yaml b/charts/paradedb/test/paradedb-enterprise/02-paradedb_test.yaml
index 36716e801..575f99775 100644
--- a/charts/paradedb/test/paradedb-enterprise/02-paradedb_test.yaml
+++ b/charts/paradedb/test/paradedb-enterprise/02-paradedb_test.yaml
@@ -24,7 +24,7 @@ spec:
schema_name => 'public',
table_name => 'mock_items_paradedb_enterprise'
);
- CREATE INDEX search_idx_paradedb_enterprise_ ON mock_items_paradedb_enterprise
+ CREATE INDEX search_idx_paradedb_enterprise ON mock_items_paradedb_enterprise
USING bm25 (id, description, category, rating, in_stock, created_at, metadata, weight_range)
WITH (key_field='id');
EOSQL
@@ -35,4 +35,9 @@ spec:
LIMIT 1;
EOSQL
echo -$RESULT-
- test "$RESULT" = " Bluetooth-enabled speaker"
+ if [ "$RESULT" = " Bluetooth-enabled speaker" ]; then
+ echo "Test for description search passed."
+ else
+ echo "Test for description search failed."
+ exit 1
+ fi
diff --git a/charts/paradedb/test/paradedb-enterprise/03-paradedb_replication_test-assert.yaml b/charts/paradedb/test/paradedb-enterprise/03-paradedb_replication_test-assert.yaml
new file mode 100644
index 000000000..b3c0ba678
--- /dev/null
+++ b/charts/paradedb/test/paradedb-enterprise/03-paradedb_replication_test-assert.yaml
@@ -0,0 +1,6 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: paradedb-enterprise-index-test
+status:
+ succeeded: 1
diff --git a/charts/paradedb/test/paradedb-enterprise/03-paradedb_replication_test.yaml b/charts/paradedb/test/paradedb-enterprise/03-paradedb_replication_test.yaml
new file mode 100644
index 000000000..f11471e86
--- /dev/null
+++ b/charts/paradedb/test/paradedb-enterprise/03-paradedb_replication_test.yaml
@@ -0,0 +1,46 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+ name: paradedb-enterprise-index-test
+spec:
+ template:
+ spec:
+ restartPolicy: OnFailure
+ containers:
+ - name: data-test
+ env:
+ - name: DB_URI
+ valueFrom:
+ secretKeyRef:
+ name: paradedb-ncc-1701-d-app
+ key: uri
+ image: alpine:3.19
+ command: ['sh', '-c']
+ args:
+ - |
+ apk --no-cache add postgresql-client
+ DB_URI="${DB_URI/paradedb-ncc-1701-d-rw/paradedb-ncc-1701-d-ro}"
+ RESULT=$(psql "$DB_URI" -t) <<-EOSQL
+ SELECT description
+ FROM mock_items_paradedb_enterprise
+ WHERE description @@@ '"bluetooth speaker"~1'
+ LIMIT 1;
+ EOSQL
+ echo -$RESULT-
+ if [ "$RESULT" = " Bluetooth-enabled speaker" ]; then
+ echo "Test for description search on replicas passed."
+ else
+ echo "Test for description search on replicas failed."
+ exit 1
+ fi
+
+ SIZE_RESULT=$(psql "$DB_URI" -t) <<-EOSQL
+ SELECT pg_size_pretty(pg_relation_size('search_idx_paradedb_enterprise'));
+ EOSQL
+ echo -$SIZE_RESULT-
+ if [ "$SIZE_RESULT" != " 0 bytes" ]; then
+ echo "Test for index size on replicas passed."
+ else
+ echo "Test for index size on replicas failed."
+ exit 1
+ fi
diff --git a/charts/paradedb/test/paradedb-enterprise/chainsaw-test.yaml b/charts/paradedb/test/paradedb-enterprise/chainsaw-test.yaml
index 17c79f865..6da55bbf2 100644
--- a/charts/paradedb/test/paradedb-enterprise/chainsaw-test.yaml
+++ b/charts/paradedb/test/paradedb-enterprise/chainsaw-test.yaml
@@ -50,6 +50,25 @@ spec:
kind: Job
- podLogs:
selector: cnpg.io/cluster=paradedb-ncc-1701-d
+ - podLogs:
+ selector: batch.kubernetes.io/job-name=paradedb-enterprise-test
+ - name: Verify index replication
+ timeouts:
+ apply: 1s
+ assert: 30s
+ try:
+ - apply:
+ file: 03-paradedb_replication_test.yaml
+ - assert:
+ file: 03-paradedb_replication_test-assert.yaml
+ catch:
+ - describe:
+ apiVersion: batch/v1
+ kind: Job
+ - podLogs:
+ selector: cnpg.io/cluster=paradedb-ncc-1701-d
+ - podLogs:
+ selector: batch.kubernetes.io/job-name=paradedb-enterprise-index-test
- name: Cleanup
try:
- script:
diff --git a/charts/paradedb/test/paradedb-minio-backup-restore/01-paradedb_cluster.yaml b/charts/paradedb/test/paradedb-minio-backup-restore/01-paradedb_cluster.yaml
index b4db25536..a2e87e1d9 100644
--- a/charts/paradedb/test/paradedb-minio-backup-restore/01-paradedb_cluster.yaml
+++ b/charts/paradedb/test/paradedb-minio-backup-restore/01-paradedb_cluster.yaml
@@ -2,7 +2,7 @@ type: paradedb
mode: standalone
version:
major: "17"
- paradedb: "0.13.2"
+ paradedb: "0.14.0"
cluster:
instances: 2
storage:
diff --git a/charts/paradedb/values.yaml b/charts/paradedb/values.yaml
index 25cc1e89b..ad82b805a 100644
--- a/charts/paradedb/values.yaml
+++ b/charts/paradedb/values.yaml
@@ -15,8 +15,8 @@ version:
# -- PostgreSQL major version to use
postgresql: "17"
# -- The ParadeDB version, set in the publish CI workflow from the latest paradedb/paradedb GitHub tag
- # -- We default to v0.13.2 for testing and local development
- paradedb: "0.13.2"
+ # -- We default to v0.14.0 for testing and local development
+ paradedb: "0.14.0"
###
# -- Cluster mode of operation. Available modes: