30 #include <boost/filesystem/path.hpp> 34 #include "mongo/stdx/condition_variable.h" 35 #include "mongo/stdx/mutex.h" 36 #include "mongo/util/concurrency/mutex.h" 66 void allocateAsap(
const std::string& name,
unsigned long long& size);
82 long prevSize(
const std::string& name)
const;
85 bool inProgress(
const std::string& name)
const;
static unsigned long long _uniqueNumber
Definition: file_allocator.h:100
stdx::mutex _pendingMutex
Definition: file_allocator.h:93
std::list< std::string > _pending
Definition: file_allocator.h:96
Copyright (C) 2014 MongoDB Inc.
Definition: bson_collection_catalog_entry.cpp:38
void waitUntilFinished() const
Definition: file_allocator.cpp:181
bool _failed
Definition: file_allocator.h:102
stdx::condition_variable _pendingUpdated
Definition: file_allocator.h:94
void requestAllocation(const std::string &name, long &size)
May be called if file exists.
Definition: file_allocator.cpp:137
std::map< std::string, long > _pendingSize
Definition: file_allocator.h:97
const char * root
Definition: record_store_v1_base.cpp:851
MONGO_DISALLOW_COPYING(FileAllocator)
void start()
Definition: file_allocator.cpp:132
static void ensureLength(int fd, long size)
Definition: file_allocator.cpp:245
std::string makeTempFileName(boost::filesystem::path root)
Definition: file_allocator.cpp:349
bool inProgress(const std::string &name) const
Definition: file_allocator.cpp:342
long prevSize(const std::string &name) const
Definition: file_allocator.cpp:333
void allocateAsap(const std::string &name, unsigned long long &size)
Returns when file has been allocated.
Definition: file_allocator.cpp:151
Definition: file_allocator.h:45
void checkFailure()
Definition: file_allocator.cpp:325
static void run(FileAllocator *fa)
called from the worked thread
Definition: file_allocator.cpp:370
Database *const OperationContext *const const StringData name
Definition: database_impl.cpp:82
FileAllocator()
Definition: file_allocator.cpp:129