|
37 | 37 | * |
38 | 38 | * |
39 | 39 | * IDENTIFICATION |
40 | | - * $PostgreSQL: pgsql/src/backend/commands/tablespace.c,v 1.66 2010/01/05 21:53:58 rhaas Exp $ |
| 40 | + * $PostgreSQL: pgsql/src/backend/commands/tablespace.c,v 1.67 2010/01/06 01:48:09 momjian Exp $ |
41 | 41 | * |
42 | 42 | *------------------------------------------------------------------------- |
43 | 43 | */ |
@@ -249,7 +249,7 @@ CreateTableSpace(CreateTableSpaceStmt *stmt) |
249 | 249 | * '/<dboid>/<relid>.<nnn>' (XXX but do we ever form the whole path |
250 | 250 | * explicitly?This may be overly conservative.) |
251 | 251 | */ |
252 | | -if (strlen(location) >= (MAXPGPATH-1-10-1-10-1-10)) |
| 252 | +if (strlen(location) >= (MAXPGPATH-1-OIDCHARS-1-OIDCHARS-1-OIDCHARS)) |
253 | 253 | ereport(ERROR, |
254 | 254 | (errcode(ERRCODE_INVALID_OBJECT_DEFINITION), |
255 | 255 | errmsg("tablespace location \"%s\" is too long", |
@@ -337,7 +337,7 @@ CreateTableSpace(CreateTableSpaceStmt *stmt) |
337 | 337 | /* |
338 | 338 | * All seems well, create the symlink |
339 | 339 | */ |
340 | | -linkloc= (char*)palloc(10+10+1); |
| 340 | +linkloc= (char*)palloc(OIDCHARS+OIDCHARS+1); |
341 | 341 | sprintf(linkloc,"pg_tblspc/%u",tablespaceoid); |
342 | 342 |
|
343 | 343 | if (symlink(location,linkloc)<0) |
@@ -553,7 +553,7 @@ remove_tablespace_directories(Oid tablespaceoid, bool redo) |
553 | 553 | char*subfile; |
554 | 554 | structstatst; |
555 | 555 |
|
556 | | -location= (char*)palloc(10+10+1); |
| 556 | +location= (char*)palloc(OIDCHARS+OIDCHARS+1); |
557 | 557 | sprintf(location,"pg_tblspc/%u",tablespaceoid); |
558 | 558 |
|
559 | 559 | /* |
@@ -1373,7 +1373,7 @@ tblspc_redo(XLogRecPtr lsn, XLogRecord *record) |
1373 | 1373 | set_short_version(location); |
1374 | 1374 |
|
1375 | 1375 | /* Create the symlink if not already present */ |
1376 | | -linkloc= (char*)palloc(10+10+1); |
| 1376 | +linkloc= (char*)palloc(OIDCHARS+OIDCHARS+1); |
1377 | 1377 | sprintf(linkloc,"pg_tblspc/%u",xlrec->ts_id); |
1378 | 1378 |
|
1379 | 1379 | if (symlink(location,linkloc)<0) |
|