Skip to content

Commit

Permalink
Merge pull request #2432 from wiredtiger/WT-2328
Browse files Browse the repository at this point in the history
WT-2328: schema drop does direct unlink, change to a block manager interface
  • Loading branch information
agorrod committed Jan 13, 2016
2 parents e35c23e + 40c920d commit 9504bd9
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 1 deletion.
10 changes: 10 additions & 0 deletions src/block/block_open.c
Expand Up @@ -43,6 +43,16 @@ err: WT_TRET(__wt_close(session, &fh));
return (ret);
}

/*
* __wt_block_manager_drop --
* Drop a file.
*/
int
__wt_block_manager_drop(WT_SESSION_IMPL *session, const char *filename)
{
return (__wt_remove_if_exists(session, filename));
}

/*
* __wt_block_manager_create --
* Create a file.
Expand Down
1 change: 1 addition & 0 deletions src/include/extern.h
Expand Up @@ -45,6 +45,7 @@ extern int __wt_block_map( WT_SESSION_IMPL *session, WT_BLOCK *block, void *mapp
extern int __wt_block_unmap( WT_SESSION_IMPL *session, WT_BLOCK *block, void *map, size_t maplen, void **mappingcookie);
extern int __wt_block_manager_open(WT_SESSION_IMPL *session, const char *filename, const char *cfg[], bool forced_salvage, bool readonly, uint32_t allocsize, WT_BM **bmp);
extern int __wt_block_manager_truncate( WT_SESSION_IMPL *session, const char *filename, uint32_t allocsize);
extern int __wt_block_manager_drop(WT_SESSION_IMPL *session, const char *filename);
extern int __wt_block_manager_create( WT_SESSION_IMPL *session, const char *filename, uint32_t allocsize);
extern void __wt_block_configure_first_fit(WT_BLOCK *block, bool on);
extern int __wt_block_open(WT_SESSION_IMPL *session, const char *filename, const char *cfg[], bool forced_salvage, bool readonly, uint32_t allocsize, WT_BLOCK **blockp);
Expand Down
2 changes: 1 addition & 1 deletion src/meta/meta_track.c
Expand Up @@ -141,7 +141,7 @@ __meta_track_apply(WT_SESSION_IMPL *session, WT_META_TRACK *trk)
ret = bm->checkpoint_resolve(bm, session));
break;
case WT_ST_DROP_COMMIT:
if ((ret = __wt_remove_if_exists(session, trk->a)) != 0)
if ((ret = __wt_block_manager_drop(session, trk->a)) != 0)
__wt_err(session, ret,
"metadata remove dropped file %s", trk->a);
break;
Expand Down

0 comments on commit 9504bd9

Please sign in to comment.