Rhino 5 succeeds/Rhino 6 fails - boolean union

I have a file containing a series of cuboids.
In Rhino 5 when BooleanUnion command is run, it works perfectly and mentioned shapes create a single closed solid.
However in Rhino 6, BooleanUnion command just fails. Why is that so?

For some reason the same rule applies in Grasshopper too: On Rhino 5 it works (0.9.0076). On Rhino 6 (1.0.0004) it fails.

Any help would be appreciated.
boolean_union_fail.3dm (1.1 MB)

Hello - it works in V5 but results in non-manifold edges- in V6 it works if you go one level at a time but it also makes non-manifolds - but the reason given for failing all at once in V6 is also non-manifolds. I’ll investigate some more…

image

-Pascal

Thank you for the quick reply Pascal.

Another thing that I find strange about the _BooleanUnion command (both on Rhino 5 and Rhino 6) is that it undoes its results if it fails to boolean union one of the parts from the initial selection.
Why is this so?

Let’s say that I select a series of cubes, one next to each other. So they share the same vertical face. And I have the upper attached solids. If I select all of this geometry (both the upper attached solids and these touching cubes) and run the _BooleanUnion command in Rhino 6, I will get the “Boolean Union failed” message, and boolean union of the touching cubes will be undone, even though it should succeed.

image

Hello - the reason that the whole thing fails if one bit fails is that the operation is not tested object by object, the whole set is unioned.

-Pascal

Thank you @pascal,
Another interesting thing is that in Rhino 5, after running _BooleanUnion command, I can explode and join the srfs and I get a perfectly closed polysurface.