summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ndb/src/kernel/blocks/dbdict/Dbdict.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/ndb/src/kernel/blocks/dbdict/Dbdict.cpp b/ndb/src/kernel/blocks/dbdict/Dbdict.cpp
index f60720a1345..5ad225f3f37 100644
--- a/ndb/src/kernel/blocks/dbdict/Dbdict.cpp
+++ b/ndb/src/kernel/blocks/dbdict/Dbdict.cpp
@@ -369,6 +369,9 @@ void Dbdict::execFSCLOSECONF(Signal* signal)
jam();
closeWriteTableConf(signal, fsPtr);
break;
+ case FsConnectRecord::FsConnectRecord::OPEN_READ_SCHEMA2:
+ openSchemaFile(signal, 1, fsPtr.i, false);
+ break;
default:
jamLine((fsPtr.p->fsState & 0xFFF));
ndbrequire(false);
@@ -1012,10 +1015,13 @@ void Dbdict::readSchemaConf(Signal* signal,
void Dbdict::readSchemaRef(Signal* signal,
FsConnectRecordPtr fsPtr)
{
+ /**
+ * First close corrupt file
+ */
fsPtr.p->fsState = FsConnectRecord::OPEN_READ_SCHEMA2;
- openSchemaFile(signal, 1, fsPtr.i, false);
+ closeFile(signal, fsPtr.p->filePtr, fsPtr.i);
return;
-}//Dbdict::readSchemaRef()
+}
void Dbdict::closeReadSchemaConf(Signal* signal,
FsConnectRecordPtr fsPtr)