Skip to content

Commit 4bf6c4d

Browse files
authored
update the Validators Admin-Guide (#2098)
### What A community notice regarding the actions needed to prevent a failure-mode with package upgrades. ### Why We discovered a rare failure mode that occurs when stellar-core is upgraded on top of a pending postgresql package update. ### Testing before merge SDF SRE team has tested and validated the procedure. ### Validation after merge Website docs are updated ### Issue addressed by this PR https://github.com/stellar/ops/issues/4337
1 parent a8ec547 commit 4bf6c4d

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

docs/validators/admin-guide/maintenance.mdx

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,24 @@ We recommend performing the following steps in order (repeat sequentially as nee
2323
4. When done, start your instance that should rejoin the network
2424
5. The instance will be completely caught up when it's both `Synced` and _there is no backlog in uploading history_.
2525

26+
## Community Notice: Action Required Before Stellar Core Upgrade
27+
28+
We have identified a specific scenario on Ubuntu where upgrading the Stellar Core package can inadvertently trigger an automatic, unplanned upgrade of PostgreSQL. This can occur if a newer version of PostgreSQL is available in your repositories. This is because the Stellar Core package lists it as a dependency, "apt" automatically installs the newer PostgreSQL package within the same transaction as the Stellar Core upgrade, which can lead to an unexpected database restart and can cause the Core process to crash.
29+
30+
Action: To prevent service disruption and ensure data integrity, the node operators must manually apply PostgreSQL patch BEFORE executing the Stellar Core package upgrade.
31+
32+
### Pre-Upgrade Steps
33+
34+
Before running an apt command that includes the stellar-core package, follow these steps to manage the PostgreSQL upgrade safely:
35+
36+
1. Gracefully shut down stellar-core: `sudo systemctl stop stellar-core`
37+
2. `apt list --upgradable | grep postgresql`
38+
3. `sudo apt-get install postgresql-16 postgresql-client-16 # or the specific version package`
39+
4. Restart stellar-core: `sudo systemctl start stellar-core`
40+
5. Wait for core to get in sync: `stellar-core-cmd info`
41+
42+
Then, you may proceed to deploy the newer version of stellar-core package in your customary way (`apt`, config management tool, etc)
43+
2644
## Special Considerations During Quorum Set Updates
2745

2846
When you join the ranks of node operators, it's also important to join the conversation. The best way to do that: follow the`#validators` channel on the [Stellar Developer Discord](https://discord.gg/stellardev). If you can't do that for some reason, sign up for the [Stellar Validators Google Group](https://groups.google.com/forum/#!forum/stellar-validators).

0 commit comments

Comments
 (0)