Skip to content
Snippets Groups Projects
Commit 6813de73 authored by Thomas Jahns's avatar Thomas Jahns :cartwheel: Committed by Sergey Kosukhin
Browse files

Store Xmap factory in namespace switches.

parent 372821c0
No related branches found
No related tags found
2 merge requests!34Version 2.2.0,!13Consolidation with CDI-PIO (develop)
......@@ -13,6 +13,7 @@
enum
{
cdiPioEKFileWritingFinalize,
cdiPioEKXmapNew,
cdiPioExtraNSKeysSize
};
......
......@@ -437,9 +437,12 @@ cdiPioInit(MPI_Comm commGlob, int confResH, int *pioNamespace)
}
reshRemove(confResH, &cdiPioConfOps);
if (cdiPioExtraNSKeys[cdiPioEKXmapNew] == 0) cdiPioExtraNSKeys[cdiPioEKXmapNew] = cdiNamespaceSwitchNewKey();
if (commInqIsProcIO())
{
int serverNamespace = namespaceNew();
int prevNamespace = namespaceGetActive(), serverNamespace = namespaceNew();
namespaceSetActive(serverNamespace);
namespaceSwitchSet(cdiPioExtraNSKeys[cdiPioEKXmapNew], NSSW_FUNC(conf->xmap_new));
cdiPioSerializeSetMPI();
conf->postCommSetupActions();
cdiPioFileWritingInit(conf);
......@@ -451,13 +454,14 @@ cdiPioInit(MPI_Comm commGlob, int confResH, int *pioNamespace)
}
cdiPioCommFinalize();
if (xtInitByCDI) xt_finalize();
namespaceSetActive(prevNamespace);
reshReplace(confResH, conf, &cdiPioConfOps);
namespaceDelete(serverNamespace);
return MPI_COMM_NULL;
}
else
cdiPioClientSetup(pioNamespace);
namespaceSwitchSet(cdiPioExtraNSKeys[cdiPioEKXmapNew], NSSW_FUNC(conf->xmap_new));
reshReplace(confResH, conf, &cdiPioConfOps);
xdebug("nProcsGlob=%d, RETURN", sizeGlob);
return commInqCommModel();
......@@ -473,9 +477,7 @@ static void
cdiPioFileWritingInit(const struct cdiPioConf *conf)
{
if (cdiPioExtraNSKeys[cdiPioEKFileWritingFinalize] == 0)
{
cdiPioExtraNSKeys[cdiPioEKFileWritingFinalize] = cdiNamespaceSwitchNewKey();
}
cdiPioExtraNSKeys[cdiPioEKFileWritingFinalize] = cdiNamespaceSwitchNewKey();
namespaceSwitchSet(cdiPioExtraNSKeys[cdiPioEKFileWritingFinalize], NSSW_FUNC(cdiPioFileWritingFinalizeDefault));
int IOMode = commInqIOMode();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment