diff --git a/README.md b/README.md index c88034fba..59d647219 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@

- ParadeDB + ParadeDB

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: