Change mdtruncate to truncate and not unlink.

Hiroshi Inoue
This commit is contained in:
Bruce Momjian 1999-06-11 02:39:43 +00:00
parent d852d31ea3
commit 3b9ef4d073
1 changed files with 6 additions and 19 deletions

View File

@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/storage/smgr/md.c,v 1.44 1999/05/25 16:11:30 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/storage/smgr/md.c,v 1.45 1999/06/11 02:39:43 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -711,27 +711,14 @@ mdtruncate(Relation reln, int nblocks)
MdfdVec *v;
#ifndef LET_OS_MANAGE_FILESIZE
int curnblk,
i,
oldsegno,
newsegno;
char fname[NAMEDATALEN];
char tname[NAMEDATALEN + 10];
int curnblk;
curnblk = mdnblocks(reln);
oldsegno = curnblk / RELSEG_SIZE;
newsegno = nblocks / RELSEG_SIZE;
StrNCpy(fname, RelationGetRelationName(reln)->data, NAMEDATALEN);
if (newsegno < oldsegno)
if (curnblk / RELSEG_SIZE > 0)
{
for (i = (newsegno + 1);; i++)
{
sprintf(tname, "%s.%d", fname, i);
if (FileNameUnlink(tname) < 0)
break;
}
elog(NOTICE, "Can't truncate multi-segments relation %s",
reln->rd_rel->relname.data);
return curnblk;
}
#endif