# Panfactum Changelog — edge.25-03-26 > Separates burstable and spot instance options, improves PostgreSQL backup performance 100x with explicit backup directories, adds automatic PV garbage collection, and enhances Node.js applications with automatic memory limit configuration. ## Highlights - `burstable_nodes_enabled` no longer implies spot — must now set `spot_nodes_enabled = true` explicitly - PostgreSQL backup directory is now explicit via `pg_backup_directory` — set this to preserve existing backups - PostgreSQL backup throughput improved 100x - Automatic garbage collection of orphaned persistent volumes via `kube_policies` - Node.js heap size now automatically configured from container memory limits ## Breaking Changes - Across all Panfactum modules, `burstable_nodes_enabled` no longer automatically adds a spot instance toleration. `spot_nodes_enabled` must now be set to `true` - The backup directory for [`kube_pg_cluster`](https://panfactum.com/docs/edge/reference/infrastructure-modules/submodule/kubernetes/kube_pg_cluster) is now explicitly specified by `pg_backup_directory`. This release will restart your backup history unless you - Impacts: iac-module `kube_pg_cluster` — Backup directory now explicitly configured via pg_backup_directory ## Additions - Adds support for the `transform` parameter in [`kube_argo_sensor`](https://panfactum.com/docs/edge/reference/infrastructure-modules/submodule/kubernetes/kube_argo_sensor) `dependencies` input for custom event transformations. - Impacts: iac-module `kube_argo_sensor` — New transform parameter added to dependencies input - Adds `spot_nodes_enabled`, `burstable_nodes_enabled`, and `controller_nodes_enabled` inputs to all direct Kubernetes modules. - Adds a `spot_nodes_enabled` input to [`aws_eks`](https://panfactum.com/docs/edge/reference/infrastructure-modules/direct/aws/aws_eks) to disable spot instances for controller nodes. - Impacts: iac-module `aws_eks` — New spot_nodes_enabled input to control spot for controller nodes - Adds support for automatically preventing disruptions when backups are running in [`kube_pg_cluster`](https://panfactum.com/docs/edge/reference/infrastructure-modules/submodule/kubernetes/kube_pg_cluster). - Impacts: iac-module `kube_pg_cluster` — Disruptions now automatically prevented during backup runs - Adds automatic garbage collection of orphaned persistent volumes via [`kube_policies`](https://panfactum.com/docs/edge/reference/infrastructure-modules/direct/kubernetes/kube_policies). - Impacts: iac-module `kube_policies` — New policy for automatic orphaned persistent volume cleanup - Adds automatic garbage collection of failed backups in [`kube_pg_cluster`](https://panfactum.com/docs/edge/reference/infrastructure-modules/direct/kubernetes/kube_pg_cluster). - Impacts: iac-module `kube_pg_cluster` — Failed backups now automatically garbage collected - Adds `min_node_memory_mb` to [`kube_karpenter_node_pools`](https://panfactum.com/docs/edge/reference/infrastructure-modules/direct/kubernetes/kube_karpenter_node_pools) to set a minimum memory threshold for nodes. - Impacts: iac-module `kube_karpenter_node_pools` — New min_node_memory_mb input for minimum node memory threshold - Adds automatic injection of `NODE_OPTIONS=--max-old-space-size=` into every container to allow automatic scaling of the Node.js heap size. ## Fixes - Optimizes the backup process for [`kube_pg_cluster`](https://panfactum.com/docs/edge/reference/infrastructure-modules/submodule/kubernetes/kube_pg_cluster) to provide a 100x improvement in backup throughput. - Impacts: iac-module `kube_pg_cluster` — Backup throughput improved by 100x - Upgrades the `kubectl-cnpg` plugin in the devShell to be compatible with the latest CNPG operator. - Impacts: devshell `kubectl-cnpg` — Upgraded to be compatible with latest CNPG operator - Fixes version pinning on first-party modules ([issue 237](https://github.com/Panfactum/stack/issues/237)). - Reference (issue-report): [Version pinning broken for first-party modules](https://github.com/Panfactum/stack/issues/237) ## Upgrade Instructions ## Update `burstable_nodes_enabled` Usage Across all Panfactum modules, `burstable_nodes_enabled` no longer automatically adds a spot instance toleration. If you want [spot instances](https://aws.amazon.com/ec2/spot/), you must now explicitly set `spot_nodes_enabled = true` as well. Review any modules where you previously set `burstable_nodes_enabled = true` and add `spot_nodes_enabled = true` if spot instances are also desired. ## Set `pg_backup_directory` to Preserve Backup History The backup directory for [`kube_pg_cluster`](https://panfactum.com/docs/edge/reference/infrastructure-modules/submodule/kubernetes/kube_pg_cluster) is now explicitly specified by `pg_backup_directory` instead of being randomly generated. **This release will automatically restart your backup history unless you explicitly set `pg_backup_directory` to the `recovery_directory` output value from the previous release.** To preserve your existing backup history: 1. Retrieve the current `recovery_directory` output from your `kube_pg_cluster` deployment. 2. Set `pg_backup_directory` to that value in your Terragrunt inputs before applying this release. 3. Ensure backups are working correctly after upgrading. Note: The `recovery_directory` output has been renamed to `backup_directory`. ## Related Resources - [JSON Data](https://panfactum.com/docs/changelog/edge.25-03-26.json): Machine-readable data - [Channel Release List](https://panfactum.com/docs/changelog/edge.json): All releases in this channel