rocksdb/db
Dhruba Borthakur 7730587120 Prevent segfault in OpenCompactionOutputFile
Summary:
The segfault was happening because the program was unable to open a new
sst file (as part of the compaction) because the process ran out of
file descriptors.

The fix is to check the return status of the file creation before taking
any other action.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fabf03f9700 (LWP 29904)]
leveldb::DBImpl::OpenCompactionOutputFile (this=this@entry=0x7fabf9011400, compact=compact@entry=0x7fabf741a2b0) at db/db_impl.cc:1399
1399    db/db_impl.cc: No such file or directory.
(gdb) where

Test Plan: make check

Reviewers: MarkCallaghan, sheki

Reviewed By: MarkCallaghan

CC: leveldb

Differential Revision: https://reviews.facebook.net/D10101
2013-04-10 09:59:48 -07:00
..
.nfs00000000066c9ebb00000002 Enhance db_bench 2013-03-14 16:00:23 -07:00
builder.cc Ability to configure bufferedio-reads, filesystem-readaheads and mmap-read-write per database. 2013-03-20 23:14:03 -07:00
builder.h Ability to configure bufferedio-reads, filesystem-readaheads and mmap-read-write per database. 2013-03-20 23:14:03 -07:00
c.cc Fix poor error on num_levels mismatch and few other minor improvements 2013-01-25 15:37:26 -08:00
c_test.c Fix poor error on num_levels mismatch and few other minor improvements 2013-01-25 15:37:26 -08:00
corruption_test.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
db_bench.cc memory manage statistics 2013-03-27 11:27:39 -07:00
db_filesnapshot.cc Fix all the lint errors. 2012-11-28 17:18:41 -08:00
db_impl.cc Prevent segfault in OpenCompactionOutputFile 2013-04-10 09:59:48 -07:00
db_impl.h Let's get rid of delete as much as possible, here are some examples. 2013-03-28 17:31:44 -07:00
db_impl_readonly.cc Fix for the weird behaviour encountered by ldb Get where it could read only the second-latest value 2013-02-20 10:45:52 -08:00
db_impl_readonly.h Add a readonly db 2012-11-07 14:19:48 -08:00
db_iter.cc A number of fixes: 2011-10-31 17:22:06 +00:00
db_iter.h A number of fixes: 2011-10-31 17:22:06 +00:00
db_statistics.h Refactor statistics. Remove individual functions like incNumFileOpens 2013-02-25 13:58:34 -08:00
db_stats_logger.cc remove boost 2012-09-16 19:33:43 -07:00
db_test.cc [RocksDB][Bug] Look at all the files, not just the first file in TransactionLogIter as BatchWrites can leave it in Limbo 2013-04-08 16:28:09 -07:00
dbformat.cc manifest_dump: Add --hex=1 option 2012-12-16 08:58:28 -08:00
dbformat.h Fox db_stress crash by copying keys before changing sequencenum to zero. 2013-03-06 10:52:08 -08:00
dbformat_test.cc Fix all warnings generated by -Wall option to the compiler. 2012-11-06 14:07:31 -08:00
filename.cc Allow the logs to be purged by TTL. 2013-02-04 19:42:40 -08:00
filename.h Added meta-database support. 2012-12-17 11:26:59 -08:00
filename_test.cc Added meta-database support. 2012-12-17 11:26:59 -08:00
log_file.h GetUpdatesSince API to enable replication. 2012-12-07 11:42:13 -08:00
log_format.h Fixed sign-comparison in rocksdb code-base and fixed Makefile 2013-03-19 14:35:23 -07:00
log_reader.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
log_reader.h TransactionLogIter should stall at the last record. Currently it errors out 2013-03-21 15:12:35 -07:00
log_test.cc Fix more signed-unsigned comparisons 2013-03-19 17:21:36 -07:00
log_writer.cc Fix a number of object lifetime/ownership issues 2013-01-23 16:54:11 -08:00
log_writer.h Fix a number of object lifetime/ownership issues 2013-01-23 16:54:11 -08:00
memtable.cc Ability for rocksdb to compact when flushing the in-memory memtable to a file in L0. 2013-03-04 00:01:47 -08:00
memtable.h Ability for rocksdb to compact when flushing the in-memory memtable to a file in L0. 2013-03-04 00:01:47 -08:00
memtablelist.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
memtablelist.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
repair.cc Ability to configure bufferedio-reads, filesystem-readaheads and mmap-read-write per database. 2013-03-20 23:14:03 -07:00
skiplist.h Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
skiplist_test.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
snapshot.h Ability for rocksdb to compact when flushing the in-memory memtable to a file in L0. 2013-03-04 00:01:47 -08:00
table_cache.cc [Rocksdb] Remove useless struct TableAndFile 2013-04-05 11:26:46 -07:00
table_cache.h Ability to configure bufferedio-reads, filesystem-readaheads and mmap-read-write per database. 2013-03-20 23:14:03 -07:00
transaction_log_iterator_impl.cc [RocksDB][Bug] Look at all the files, not just the first file in TransactionLogIter as BatchWrites can leave it in Limbo 2013-04-08 16:28:09 -07:00
transaction_log_iterator_impl.h [RocksDB][Bug] Look at all the files, not just the first file in TransactionLogIter as BatchWrites can leave it in Limbo 2013-04-08 16:28:09 -07:00
version_edit.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
version_edit.h Fix poor error on num_levels mismatch and few other minor improvements 2013-01-25 15:37:26 -08:00
version_edit_test.cc Make some variables configurable for each db instance 2012-06-27 14:36:31 -07:00
version_set.cc Ability to configure bufferedio-reads, filesystem-readaheads and mmap-read-write per database. 2013-03-20 23:14:03 -07:00
version_set.h Ability to configure bufferedio-reads, filesystem-readaheads and mmap-read-write per database. 2013-03-20 23:14:03 -07:00
version_set_reduce_num_levels.cc Fix valgrind errors in rocksdb tests: auto_roll_logger_test, reduce_levels_test 2013-03-12 16:03:16 -07:00
version_set_test.cc Codemod NULL to nullptr 2013-02-28 18:04:58 -08:00
write_batch.cc added group commit; drastically speeds up mult-threaded synchronous write workloads 2012-03-08 16:23:21 -08:00
write_batch_internal.h GetUpdatesSince API to enable replication. 2012-12-07 11:42:13 -08:00
write_batch_test.cc Fix all warnings generated by -Wall option to the compiler. 2012-11-06 14:07:31 -08:00