Commit a5945b86 authored by Barry Perlman's avatar Barry Perlman Committed by Yoni Fogel

[t:2980] User call to env->put_multiple() checks file space before performing insert,

will return ENOSPC if filesystem is in redzone.


git-svn-id: file:///svn/toku/tokudb@24748 c7de825b-a66e-492c-adef-691d508d4ae1
parent 24d915f2
...@@ -1388,9 +1388,12 @@ static int env_del_multiple(DB_ENV *env, DB *src_db, DB_TXN *txn, const DBT *key ...@@ -1388,9 +1388,12 @@ static int env_del_multiple(DB_ENV *env, DB *src_db, DB_TXN *txn, const DBT *key
static int static int
locked_env_put_multiple(DB_ENV *env, DB *src_db, DB_TXN *txn, const DBT *key, const DBT *val, uint32_t num_dbs, DB **db_array, DBT *keys, DBT *vals, uint32_t *flags_array, void *extra) { locked_env_put_multiple(DB_ENV *env, DB *src_db, DB_TXN *txn, const DBT *key, const DBT *val, uint32_t num_dbs, DB **db_array, DBT *keys, DBT *vals, uint32_t *flags_array, void *extra) {
int r = env_check_avail_fs_space(env);
if (r == 0) {
toku_ydb_lock(); toku_ydb_lock();
int r = env_put_multiple(env, src_db, txn, key, val, num_dbs, db_array, keys, vals, flags_array, extra); r = env_put_multiple(env, src_db, txn, key, val, num_dbs, db_array, keys, vals, flags_array, extra);
toku_ydb_unlock(); toku_ydb_unlock();
}
return r; return r;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment