Commit 4648d84
fix(test): Prevent panic in AfterSuite when BeforeSuite fails
If the BeforeSuite hook fails before the database connection is
initialized, the `connectionPool` variable remains nil. A common cause
is a misconfigured test environment, such as when `greenplum_path.sh`
is not sourced, leading to a "command not found" error for `createdb`.
The previous AfterSuite logic would then attempt to dereference this
nil pointer, causing a panic.
```
Running Suite: database query tests - /home/cbdb/Projects/gpbackup/integration
==============================================================================
Random Seed: 1760521199 - will randomize all specs
Will run 549 of 552 specs
------------------------------
[BeforeSuite] [FAILED] [0.003 seconds]
[BeforeSuite]
/home/cbdb/Projects/gpbackup/integration/integration_suite_test.go:54
[FAILED] Cannot create database testdb; is GPDB running?
In [BeforeSuite] at: /home/cbdb/Projects/gpbackup/integration/integration_suite_test.go:58 @ 10/15/25 17:40:06.839
------------------------------
[AfterSuite] [PANICKED] [0.000 seconds]
[AfterSuite]
/home/cbdb/Projects/gpbackup/integration/integration_suite_test.go:127
[PANICKED] Test Panicked
In [AfterSuite] at: /usr/lib/go-1.23/src/runtime/panic.go:262 @ 10/15/25 17:40:06.839
runtime error: invalid memory address or nil pointer dereference
Full Stack Trace
github.com/apache/cloudberry-backup/integration.init.func10()
/home/cbdb/Projects/gpbackup/integration/integration_suite_test.go:129 +0x26
------------------------------
Summarizing 2 Failures:
[FAIL] [BeforeSuite]
/home/cbdb/Projects/gpbackup/integration/integration_suite_test.go:58
[PANICKED!] [AfterSuite]
/usr/lib/go-1.23/src/runtime/panic.go:262
Ran 0 of 552 Specs in 0.023 seconds
FAIL! -- A BeforeSuite node failed so all tests were skipped.
--- FAIL: TestQueries (0.03s)
FAIL
Ginkgo ran 1 suite in 7.163251311s
```1 parent aec11cc commit 4648d84
1 file changed
+28
-17
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
126 | 126 | | |
127 | 127 | | |
128 | 128 | | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
142 | 134 | | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
143 | 149 | | |
144 | 150 | | |
145 | 151 | | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
146 | 160 | | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
| 161 | + | |
151 | 162 | | |
152 | 163 | | |
153 | 164 | | |
0 commit comments