forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit344cdff
committed
Clean up some psql issues around handling of the query output file.
Formerly, if "psql -o foo" failed to open the output file "foo", it wouldprint an error message but then carry on as though -o had not beenspecified at all. This seems contrary to expectation: a program thatcannot open its output file normally fails altogether. Make psql doexit(1) after reporting the error.If "\o foo" failed to open "foo", it would print an error message but thenreset the output file to stdout, as if the argument had been omitted.This is likewise pretty surprising behavior. Make it keep the previousoutput state, instead.psql keeps SIGPIPE interrupts disabled when it is writing to a pipe, eithera pipe specified by -o/\o or a transient pipe opened for purposes such asusing a pager on query output. The logic for this was too simple and couldsometimes re-enable SIGPIPE when a -o pipe was still active, thus possiblyleading to an unexpected psql crash later.Fixing the last point required getting rid of the kluge in PrintQueryTuplesand ExecQueryUsingCursor whereby they'd transiently change the globalqueryFout state, but that seems like good cleanup anyway.Back-patch to 9.5 but not further; these are minor-enough issues thatchanging the behavior in stable branches doesn't seem appropriate.1 parentf15b820 commit344cdff
7 files changed
+178
-106
lines changedLines changed: 4 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1531 | 1531 |
| |
1532 | 1532 |
| |
1533 | 1533 |
| |
| 1534 | + | |
1534 | 1535 |
| |
1535 | 1536 |
| |
1536 | 1537 |
| |
| |||
1565 | 1566 |
| |
1566 | 1567 |
| |
1567 | 1568 |
| |
| 1569 | + | |
| 1570 | + | |
| 1571 | + | |
1568 | 1572 |
| |
1569 | 1573 |
| |
1570 | 1574 |
| |
|
Lines changed: 99 additions & 85 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
26 | 26 |
| |
27 | 27 |
| |
28 | 28 |
| |
29 |
| - | |
30 | 29 |
| |
31 | 30 |
| |
32 | 31 |
| |
33 | 32 |
| |
| 33 | + | |
34 | 34 |
| |
35 |
| - | |
36 |
| - | |
| 35 | + | |
37 | 36 |
| |
38 |
| - | |
39 |
| - | |
40 |
| - | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
41 | 44 |
| |
42 | 45 |
| |
43 |
| - | |
| 46 | + | |
44 | 47 |
| |
45 |
| - | |
46 |
| - | |
47 |
| - | |
48 |
| - | |
49 |
| - | |
50 |
| - | |
51 |
| - | |
52 |
| - | |
53 |
| - | |
54 |
| - | |
55 |
| - | |
56 |
| - | |
57 | 48 |
| |
58 | 49 |
| |
59 |
| - | |
60 |
| - | |
| 50 | + | |
| 51 | + | |
61 | 52 |
| |
62 | 53 |
| |
63 | 54 |
| |
64 |
| - | |
65 |
| - | |
| 55 | + | |
| 56 | + | |
66 | 57 |
| |
67 | 58 |
| |
68 | 59 |
| |
69 |
| - | |
70 |
| - | |
| 60 | + | |
| 61 | + | |
71 | 62 |
| |
72 | 63 |
| |
73 |
| - | |
| 64 | + | |
74 | 65 |
| |
75 | 66 |
| |
76 |
| - | |
77 |
| - | |
78 |
| - | |
| 67 | + | |
79 | 68 |
| |
80 | 69 |
| |
81 |
| - | |
82 |
| - | |
83 |
| - | |
84 |
| - | |
85 |
| - | |
86 |
| - | |
| 70 | + | |
87 | 71 |
| |
88 | 72 |
| |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
89 | 108 |
| |
90 | 109 |
| |
91 | 110 |
| |
92 | 111 |
| |
93 | 112 |
| |
94 |
| - | |
95 | 113 |
| |
96 | 114 |
| |
97 | 115 |
| |
| |||
611 | 629 |
| |
612 | 630 |
| |
613 | 631 |
| |
614 |
| - | |
615 |
| - | |
616 |
| - | |
617 |
| - | |
618 |
| - | |
| 632 | + | |
| 633 | + | |
619 | 634 |
| |
620 |
| - | |
621 |
| - | |
622 |
| - | |
623 |
| - | |
624 |
| - | |
| 635 | + | |
625 | 636 |
| |
626 |
| - | |
627 |
| - | |
628 |
| - | |
| 637 | + | |
| 638 | + | |
629 | 639 |
| |
630 |
| - | |
631 |
| - | |
| 640 | + | |
632 | 641 |
| |
633 |
| - | |
634 |
| - | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
635 | 649 |
| |
636 | 650 |
| |
637 | 651 |
| |
| |||
1199 | 1213 |
| |
1200 | 1214 |
| |
1201 | 1215 |
| |
1202 |
| - | |
1203 |
| - | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
1204 | 1219 |
| |
1205 |
| - | |
1206 | 1220 |
| |
1207 | 1221 |
| |
1208 | 1222 |
| |
| |||
1268 | 1282 |
| |
1269 | 1283 |
| |
1270 | 1284 |
| |
1271 |
| - | |
1272 |
| - | |
1273 |
| - | |
1274 |
| - | |
1275 |
| - | |
| 1285 | + | |
1276 | 1286 |
| |
1277 |
| - | |
1278 |
| - | |
1279 | 1287 |
| |
1280 | 1288 |
| |
1281 | 1289 |
| |
| 1290 | + | |
| 1291 | + | |
| 1292 | + | |
| 1293 | + | |
| 1294 | + | |
| 1295 | + | |
| 1296 | + | |
1282 | 1297 |
| |
1283 | 1298 |
| |
1284 | 1299 |
| |
1285 |
| - | |
| 1300 | + | |
1286 | 1301 |
| |
1287 | 1302 |
| |
1288 | 1303 |
| |
| |||
1302 | 1317 |
| |
1303 | 1318 |
| |
1304 | 1319 |
| |
1305 |
| - | |
| 1320 | + | |
1306 | 1321 |
| |
1307 |
| - | |
1308 |
| - | |
1309 |
| - | |
1310 |
| - | |
| 1322 | + | |
| 1323 | + | |
1311 | 1324 |
| |
1312 | 1325 |
| |
1313 | 1326 |
| |
| |||
1331 | 1344 |
| |
1332 | 1345 |
| |
1333 | 1346 |
| |
1334 |
| - | |
| 1347 | + | |
1335 | 1348 |
| |
1336 | 1349 |
| |
1337 | 1350 |
| |
1338 | 1351 |
| |
1339 | 1352 |
| |
1340 |
| - | |
1341 |
| - | |
| 1353 | + | |
| 1354 | + | |
1342 | 1355 |
| |
1343 | 1356 |
| |
1344 |
| - | |
| 1357 | + | |
1345 | 1358 |
| |
1346 | 1359 |
| |
1347 | 1360 |
| |
| |||
1355 | 1368 |
| |
1356 | 1369 |
| |
1357 | 1370 |
| |
1358 |
| - | |
| 1371 | + | |
1359 | 1372 |
| |
1360 | 1373 |
| |
1361 | 1374 |
| |
| |||
1365 | 1378 |
| |
1366 | 1379 |
| |
1367 | 1380 |
| |
1368 |
| - | |
| 1381 | + | |
1369 | 1382 |
| |
1370 | 1383 |
| |
1371 | 1384 |
| |
1372 |
| - | |
1373 | 1385 |
| |
1374 | 1386 |
| |
1375 |
| - | |
1376 |
| - | |
1377 |
| - | |
1378 |
| - | |
1379 |
| - | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
1380 | 1395 |
| |
1381 |
| - | |
| 1396 | + | |
1382 | 1397 |
| |
1383 |
| - | |
1384 |
| - | |
1385 |
| - | |
| 1398 | + | |
| 1399 | + | |
1386 | 1400 |
| |
1387 | 1401 |
| |
1388 | 1402 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
16 | 16 |
| |
17 | 17 |
| |
18 | 18 |
| |
| 19 | + | |
19 | 20 |
| |
20 | 21 |
| |
21 | 22 |
| |
|
Lines changed: 3 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
37 | 37 |
| |
38 | 38 |
| |
39 | 39 |
| |
40 |
| - | |
| 40 | + | |
41 | 41 |
| |
42 | 42 |
| |
43 | 43 |
| |
| |||
312 | 312 |
| |
313 | 313 |
| |
314 | 314 |
| |
315 |
| - | |
316 |
| - | |
317 |
| - | |
| 315 | + | |
318 | 316 |
| |
319 | 317 |
| |
320 | 318 |
| |
| |||
399 | 397 |
| |
400 | 398 |
| |
401 | 399 |
| |
402 |
| - | |
403 |
| - | |
404 |
| - | |
| 400 | + | |
405 | 401 |
| |
406 | 402 |
| |
407 | 403 |
| |
|
0 commit comments
Comments
(0)