private void MinimalCreate()
{
if (Exists())
throw new IOException("Composite already exists");
// Lock the store system (generates an IOException if exclusive Lock
// can not be made).
if (!IsReadOnly) {
StoreSystem.Lock(StateStoreName);
}
// Create/Open the state store
stateStore = StoreSystem.CreateStore(StateStoreName);
try {
stateStore.Lock();
StateStore = new TableStateStore(stateStore);
long headP = StateStore.Create();
// Get the fixed area
var fixedArea = stateStore.GetArea(-1);
fixedArea.WriteInt8(headP);
fixedArea.Flush();
} finally {
stateStore.Unlock();
}
Setup();
// Init the conglomerate blob store
InitObjectStore();
// Create the system table (but don't initialize)
CreateSystem();
}