Return invalid argument if batch is null (#9744)

Summary:
Originally, a corruption will be returned by `DBImpl::WriteImpl(batch...)` if batch is
null. This is inaccurate since there is no data corruption.
Return `Status::InvalidArgument()` instead.

Pull Request resolved: https://github.com/facebook/rocksdb/pull/9744

Test Plan: make check

Reviewed By: ltamasi

Differential Revision: D35086268

Pulled By: riversand963

fbshipit-source-id: 677397b007a53bc25210eac0178d49c9797b5951
main
Yanqin Jin 3 years ago committed by Facebook GitHub Bot
parent 6904fd0c86
commit 29bec740f5
  1. 2
      db/db_impl/db_impl_write.cc

@ -129,7 +129,7 @@ Status DBImpl::WriteImpl(const WriteOptions& write_options,
PreReleaseCallback* pre_release_callback) { PreReleaseCallback* pre_release_callback) {
assert(!seq_per_batch_ || batch_cnt != 0); assert(!seq_per_batch_ || batch_cnt != 0);
if (my_batch == nullptr) { if (my_batch == nullptr) {
return Status::Corruption("Batch is nullptr!"); return Status::InvalidArgument("Batch is nullptr!");
} else if (!disable_memtable && } else if (!disable_memtable &&
WriteBatchInternal::TimestampsUpdateNeeded(*my_batch)) { WriteBatchInternal::TimestampsUpdateNeeded(*my_batch)) {
// If writing to memtable, then we require the caller to set/update the // If writing to memtable, then we require the caller to set/update the

Loading…
Cancel
Save