Skip to content

Commit ff42c83

Browse files
committed
cleanup of cfs.c
1 parent 2f2ad8a commit ff42c83

File tree

1 file changed

+66
-53
lines changed
  • src/backend/storage/file

1 file changed

+66
-53
lines changed

src/backend/storage/file/cfs.c

Lines changed: 66 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1053,7 +1053,7 @@ bool cfs_control_gc(bool enabled)
10531053
/* ----------------------------------------------------------------
10541054
* Section 5: Garbage collection user's functions.
10551055
*
1056-
* TODO add description. reorder functions.
1056+
* TODO add descriptions
10571057
* ----------------------------------------------------------------
10581058
*/
10591059
PG_FUNCTION_INFO_V1(cfs_start_gc);
@@ -1083,7 +1083,8 @@ Datum cfs_start_gc(PG_FUNCTION_ARGS)
10831083
cfs_state->n_workers = PG_GETARG_INT32(0);
10841084
handles = (BackgroundWorkerHandle**)palloc(cfs_state->n_workers*sizeof(BackgroundWorkerHandle*));
10851085

1086-
for (i = 0; i < cfs_state->n_workers; i++) {
1086+
for (i = 0; i < cfs_state->n_workers; i++)
1087+
{
10871088
BackgroundWorker worker;
10881089
MemSet(&worker, 0, sizeof(worker));
10891090
sprintf(worker.bgw_name, "cfs-worker-%d", i);
@@ -1092,13 +1093,12 @@ Datum cfs_start_gc(PG_FUNCTION_ARGS)
10921093
worker.bgw_restart_time = BGW_NEVER_RESTART;
10931094
worker.bgw_main = cfs_gc_bgworker_main;
10941095
worker.bgw_main_arg = Int32GetDatum(i);
1095-
if (!RegisterDynamicBackgroundWorker(&worker, &handles[i])) {
1096+
if (!RegisterDynamicBackgroundWorker(&worker, &handles[i]))
10961097
break;
1097-
}
10981098
}
1099-
for (j = 0; j < i; j++) {
1099+
for (j = 0; j < i; j++)
11001100
WaitForBackgroundWorkerShutdown(handles[j]);
1101-
}
1101+
11021102
pfree(handles);
11031103
pg_atomic_clear_flag(&cfs_state->gc_started);
11041104
}
@@ -1122,35 +1122,41 @@ Datum cfs_estimate(PG_FUNCTION_ARGS)
11221122
Relation rel = try_relation_open(oid, AccessShareLock);
11231123
double avgRatio = 0.0;
11241124

1125-
if (rel != NULL) {
1125+
if (rel != NULL)
1126+
{
11261127
char* path = relpathbackend(rel->rd_node, rel->rd_backend, MAIN_FORKNUM);
11271128
int fd = open(path, O_RDONLY|PG_BINARY, 0);
1128-
if (fd >= 0) {
1129+
1130+
if (fd >= 0)
1131+
{
11291132
int i;
11301133
char origBuffer[BLCKSZ];
11311134
char compressedBuffer[CFS_MAX_COMPRESSED_SIZE(BLCKSZ)];
11321135
uint32 compressedSize;
11331136
off_t rc = lseek(fd, 0, SEEK_END);
1134-
if (rc >= 0) {
1137+
1138+
if (rc >= 0)
1139+
{
11351140
off_t step = rc / BLCKSZ / CFS_ESTIMATE_PROBES * BLCKSZ;
1136-
for (i = 0; i < CFS_ESTIMATE_PROBES; i++) {
1141+
for (i = 0; i < CFS_ESTIMATE_PROBES; i++)
1142+
{
11371143
rc = lseek(fd, step*i, SEEK_SET);
1138-
if (rc < 0) {
1144+
if (rc < 0)
11391145
break;
1140-
}
1141-
if (!cfs_read_file(fd, origBuffer, BLCKSZ)) {
1146+
1147+
if (!cfs_read_file(fd, origBuffer, BLCKSZ))
11421148
break;
1143-
}
1144-
compressedSize = (uint32)cfs_compress(compressedBuffer, sizeof(compressedBuffer), origBuffer, BLCKSZ);
1145-
if (compressedSize > 0 && compressedSize < CFS_MIN_COMPRESSED_SIZE(BLCKSZ)) {
1149+
1150+
compressedSize = (uint32)cfs_compress(compressedBuffer,
1151+
sizeof(compressedBuffer),origBuffer, BLCKSZ);
1152+
if (compressedSize > 0 && compressedSize < CFS_MIN_COMPRESSED_SIZE(BLCKSZ))
11461153
avgRatio += (double)BLCKSZ/compressedSize;
1147-
} else {
1154+
else
11481155
avgRatio += 1;
1149-
}
11501156
}
1151-
if (i != 0) {
1157+
1158+
if (i != 0)
11521159
avgRatio /= i;
1153-
}
11541160
}
11551161
close(fd);
11561162
}
@@ -1166,39 +1172,43 @@ Datum cfs_compression_ratio(PG_FUNCTION_ARGS)
11661172
uint64 virtSize = 0;
11671173
uint64 physSize = 0;
11681174

1169-
if (rel != NULL) {
1175+
if (rel != NULL)
1176+
{
11701177
char* path = relpathbackend(rel->rd_node, rel->rd_backend, MAIN_FORKNUM);
11711178
char* map_path = (char*)palloc(strlen(path) + 16);
11721179
int i = 0;
11731180

1174-
while (true) {
1181+
while (true)
1182+
{
11751183
int md;
11761184
FileMap* map;
11771185

1178-
if (i == 0) {
1179-
sprintf(map_path, "%s.cfm", path);
1180-
} else {
1181-
sprintf(map_path, "%s.%u.cfm", path, i);
1182-
}
1186+
if (i == 0)
1187+
sprintf(map_path, "%s.cfm", path);
1188+
else
1189+
sprintf(map_path, "%s.%u.cfm", path, i);
1190+
11831191
md = open(map_path, O_RDWR|PG_BINARY, 0);
1184-
if (md < 0) {
1192+
1193+
if (md < 0)
11851194
break;
1186-
}
1195+
11871196
map = cfs_mmap(md);
1188-
if (map == MAP_FAILED) {
1197+
if (map == MAP_FAILED)
1198+
{
11891199
elog(LOG, "cfs_compression_ration failed to map file %s: %m", map_path);
11901200
close(md);
11911201
break;
11921202
}
1203+
11931204
virtSize += pg_atomic_read_u32(&map->virtSize);
11941205
physSize += pg_atomic_read_u32(&map->physSize);
11951206

1196-
if (cfs_munmap(map) < 0) {
1207+
if (cfs_munmap(map) < 0)
11971208
elog(LOG, "CFS failed to unmap file %s: %m", map_path);
1198-
}
1199-
if (close(md) < 0) {
1209+
if (close(md) < 0)
12001210
elog(LOG, "CFS failed to close file %s: %m", map_path);
1201-
}
1211+
12021212
i += 1;
12031213
}
12041214
pfree(path);
@@ -1215,39 +1225,41 @@ Datum cfs_fragmentation(PG_FUNCTION_ARGS)
12151225
uint64 usedSize = 0;
12161226
uint64 physSize = 0;
12171227

1218-
if (rel != NULL) {
1228+
if (rel != NULL)
1229+
{
12191230
char* path = relpathbackend(rel->rd_node, rel->rd_backend, MAIN_FORKNUM);
12201231
char* map_path = (char*)palloc(strlen(path) + 16);
12211232
int i = 0;
12221233

1223-
while (true) {
1234+
while (true)
1235+
{
12241236
int md;
12251237
FileMap* map;
12261238

1227-
if (i == 0) {
1228-
sprintf(map_path, "%s.cfm", path);
1229-
} else {
1230-
sprintf(map_path, "%s.%u.cfm", path, i);
1231-
}
1239+
if (i == 0)
1240+
sprintf(map_path, "%s.cfm", path);
1241+
else
1242+
sprintf(map_path, "%s.%u.cfm", path, i);
1243+
12321244
md = open(map_path, O_RDWR|PG_BINARY, 0);
1233-
if (md < 0) {
1245+
if (md < 0)
12341246
break;
1235-
}
1247+
12361248
map = cfs_mmap(md);
1237-
if (map == MAP_FAILED) {
1249+
if (map == MAP_FAILED)
1250+
{
12381251
elog(LOG, "cfs_compression_ration failed to map file %s: %m", map_path);
12391252
close(md);
12401253
break;
12411254
}
12421255
usedSize += pg_atomic_read_u32(&map->usedSize);
12431256
physSize += pg_atomic_read_u32(&map->physSize);
12441257

1245-
if (cfs_munmap(map) < 0) {
1258+
if (cfs_munmap(map) < 0)
12461259
elog(LOG, "CFS failed to unmap file %s: %m", map_path);
1247-
}
1248-
if (close(md) < 0) {
1260+
if (close(md) < 0)
12491261
elog(LOG, "CFS failed to close file %s: %m", map_path);
1250-
}
1262+
12511263
i += 1;
12521264
}
12531265
pfree(path);
@@ -1261,21 +1273,22 @@ Datum cfs_gc_relation(PG_FUNCTION_ARGS)
12611273
{
12621274
cfs_gc_processed_segments = 0;
12631275

1264-
if (cfs_gc_workers == 0 && pg_atomic_test_set_flag(&cfs_state->gc_started))
1276+
if (cfs_gc_workers == 0 && pg_atomic_test_set_flag(&cfs_state->gc_started))
12651277
{
12661278
Oid oid = PG_GETARG_OID(0);
12671279
Relation rel = try_relation_open(oid, AccessShareLock);
12681280

1269-
if (rel != NULL) {
1281+
if (rel != NULL)
1282+
{
12701283
char* path = relpathbackend(rel->rd_node, rel->rd_backend, MAIN_FORKNUM);
12711284
char* map_path = (char*)palloc(strlen(path) + 16);
12721285
int i = 0;
12731286
sprintf(map_path, "%s.cfm", path);
12741287

1275-
while (true) {
1276-
if (!cfs_gc_file(map_path)) {
1288+
while (true)
1289+
{
1290+
if (!cfs_gc_file(map_path))
12771291
break;
1278-
}
12791292
sprintf(map_path, "%s.%u.cfm", path, ++i);
12801293
}
12811294
pfree(path);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy