Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7c64f03

Browse files
committed
Fix ptrack clear. Need run pg_ptrack_clear for every db.
1 parent3d4a85f commit7c64f03

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

‎backup.c

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
#include<stdio.h>
1313
#include<stdlib.h>
14+
#include<string.h>
1415
#include<sys/stat.h>
1516
#include<sys/time.h>
1617
#include<unistd.h>
@@ -543,12 +544,25 @@ pg_start_backup(const char *label, bool smooth, pgBackup *backup)
543544
staticvoid
544545
pg_ptrack_clear(void)
545546
{
546-
PGresult*res;
547+
PGresult*res_db,*res;
548+
constchar*old_dbname=dbname;
549+
inti;
547550

548551
reconnect();
549-
res=execute("select pg_ptrack_clear()",0,NULL);
550-
PQclear(res);
552+
res_db=execute("SELECT datname FROM pg_database",0,NULL);
553+
disconnect();
554+
for(i=0;i<PQntuples(res_db);i++)
555+
{
556+
dbname=PQgetvalue(res_db,i,0);
557+
if (strcmp(dbname,"template0"))
558+
continue;
559+
reconnect();
560+
res=execute("SELECT pg_ptrack_clear()",0,NULL);
561+
PQclear(res);
562+
}
563+
PQclear(res_db);
551564
disconnect();
565+
dbname=old_dbname;
552566
}
553567

554568
staticvoid

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp