Skip to content
Snippets Groups Projects
Commit eb93c806 authored by Markus Blatt's avatar Markus Blatt
Browse files

Even in sequential code the remote index information has to be

synced as otherwise an exception is thrown.

[[Imported from SVN: r938]]
parent ec8777be
No related branches found
No related tags found
No related merge requests found
......@@ -33,6 +33,10 @@
#include "istlexception.hh"
#include <dune/common/collectivecommunication.hh>
template<int dim, template<class,class> class Comm>
void testRedistributed(int s);
namespace Dune {
/**
......@@ -174,12 +178,14 @@ namespace Dune {
typedef typename std::set<RemoteIndexTripel>::const_iterator remoteindex_iterator;
typedef typename OwnerOverlapCopyAttributeSet::AttributeSet AttributeSet;
typedef Dune::ParallelLocalIndex<AttributeSet> LI;
public:
typedef Dune::ParallelIndexSet<GlobalIdType,LI,512> PIS;
typedef Dune::RemoteIndices<PIS> RI;
typedef Dune::RemoteIndexListModifier<PIS,false> RILM;
typedef typename RI::RemoteIndex RX;
typedef Dune::BufferedCommunicator<PIS> BC;
typedef Dune::Interface<PIS> IF;
protected:
/** \brief gather/scatter callback for communcation */
......@@ -485,6 +491,9 @@ namespace Dune {
if (Element<2>::get(*i)==OwnerOverlapCopyAttributeSet::copy)
modifier.insert(RX(OwnerOverlapCopyAttributeSet::copy,&(*pi)));
}
}else{
// Force remote indices to be synced!
ri.template getModifier<false,true>(0);
}
}
......
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