Boost logo

Boost :

Subject: Re: [boost] [EXTERNAL] [1.61.0] Master branch is closed
From: Vladimir Prus (vladimir.prus_at_[hidden])
Date: 2016-04-27 02:33:41


On 4/26/2016 11:59 PM, Belcourt, Kenneth wrote:
>
>> On Apr 26, 2016, at 2:26 PM, Belcourt, Kenneth <kbelco_at_[hidden]> wrote:
>>
>>
>>> On Apr 26, 2016, at 2:01 PM, Belcourt, Kenneth <kbelco_at_[hidden]> wrote:
>>>
>>>
>>>> On Apr 26, 2016, at 1:31 PM, Vladimir Prus <vladimir.prus_at_[hidden]> wrote:
>>>>
>>>> On 4/26/2016 10:24 PM, Belcourt, Kenneth wrote:
>>>>> Yes, I’m running tests for both develop and master right now and they’ll post results here in a couple of hours.
>>>>>
>>>>>> What about graph and graph_parallel? Are they also broken in current master?
>>>>>
>>>>> Graph should be fine in master. graph_parallel that depends on MPI is broken due to the serialization issue. There’s also an issue with graph_parallel where some examples don’t compile in master due, apparently, to some un-merged changes from develop. This issue was reported by Eisuke Kawashima.
>>>>>
>>>>> The upshot is that fixing MPI serialization in master will fix both MPI and graph_parallel. The graph_parallel/example breakage is less critical though at least one user is impacted by it.
>>>>
>>>> Given that MPI and graph_parallel are entirely broken on master right now, please cherry-pick the serialization fix to master, either now or when the tests finish - it can't be worse for sure. We'll include the change in release.
>>>
>>> Just cherry-picked these two commits into master to fix the serialization issue:
>>>
>>> commit 0dce8d2c2ab273c488d708fb3e66dbb9c4298a79
>>> Author: Jürgen Hunold <jhunold_at_gmx.eu>
>>>
>>> commit 7d33e519b3daa01e9bb4a5545d5d084c45875e4f
>>> Author: K. Noel Belcourt <kbelco_at_[hidden]>
>>>
>>> MPI tests are clean on master. Graph_parallel is mostly clean, there’s one issue:
>>>
>>> clang-darwin.compile.c++ ../bin.v2/libs/graph_parallel/test/distributed_csr_algorithm_test-1.test/clang-darwin-4.2.1/debug/distributed_csr_algorithm_test.o
>>>
>>> In file included from ../libs/graph_parallel/test/distributed_csr_algorithm_test.cpp:25:
>>> In file included from ../boost/graph/dijkstra_shortest_paths.hpp:25:
>>> ../boost/pending/relaxed_heap.hpp:194:53: error: no viable conversion from returned value of type 'const value_type' (aka 'const boost::optional<unsigned long>') to function return type 'bool'
>>> bool contains(const value_type& x) const { return groups[get(id, x)]; }
>>> ^~~~~~~~~~~~~~~~~~
>>> which looks like a dependency on an un-merged change from graph develop. I’ll have to track this down.
>>
>> There’s a small change to graph develop: include/boost/pending/relaxed_heap.hpp, that fixes the graph and graph_parallel results on master, here’s the diff (haven’t found a commit to cherry-pick yet).
>>
>> diff --git a/include/boost/pending/relaxed_heap.hpp b/include/boost/pending/relaxed_heap.hpp
>> index 13f7af4..8be4484 100644
>> --- a/include/boost/pending/relaxed_heap.hpp
>> +++ b/include/boost/pending/relaxed_heap.hpp
>> @@ -191,7 +191,9 @@ public:
>> return !smallest_value || (smallest_value->kind == largest_key);
>> }
>>
>> - bool contains(const value_type& x) const { return groups[get(id, x)]; }
>> + bool contains(const value_type& x) const {
>> + return static_cast<bool>(groups[get(id, x)]);
>> + }
>
> and this change to graph/develop to fix one last issue.
>
> s988329:graph kbelco$ git diff
> diff --git a/include/boost/graph/adjacency_matrix.hpp b/include/boost/graph/adjacency_matrix.hpp
> index b1078d9..ade7351 100644
> --- a/include/boost/graph/adjacency_matrix.hpp
> +++ b/include/boost/graph/adjacency_matrix.hpp
> @@ -443,7 +443,7 @@ namespace boost {
> // graph type. Instead, use directedS, which also provides the
> // functionality required for a Bidirectional Graph (in_edges,
> // in_degree, etc.).
> - BOOST_STATIC_ASSERT(type_traits::ice_not<(is_same<Directed, bidirectionalS>::value)>::value);
> + BOOST_STATIC_ASSERT(!(is_same<Directed, bidirectionalS>::value));
>
> typedef typename mpl::if_<is_directed,
> bidirectional_tag, undirected_tag>::type
>
> These tests all pass on master with the above changes:
>
> graph/test # test-suite graph
> graph_parallel/test # test-suite graph/parallel
> mpi/test # test-suite mpi

Noel,

if you're still around, please commit these patches too.

-- 
Vladimir Prus
http://vladimirprus.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk