Will have to find what it takes to indicate cursor stability. In OQGraph's case, it basically represents iterating through rows from a storage engine and as such, is stable and should not have any mutations. Perhaps it may be adequate to constify the interface...
On 21 Jul, 2013, at 4:25 am, Arjen Lentz wrote: > > > ----- Forwarded Message ----- > From: "AL13N (JIRA)" <j...@mariadb.atlassian.net> > Sent: Sunday, 21 July, 2013 9:22:25 PM > Subject: [JIRA] (MDEV-4795) oqgraph engine fails to build with boost 1.54.0 > > > [ > https://mariadb.atlassian.net/browse/MDEV-4795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=33523#comment-33523 > ] > > AL13N commented on MDEV-4795: > ----------------------------- > > chat of some people who might have some insight in this issue. > > 10:41 < zao> Well, what static-assert is it tripping on? > 10:43 < zao> See named_graph.hpp:318 for a long and descriptive string > 10:43 < zao> BOOST_STATIC_ASSERT_MSG > ((boost::is_base_of<boost::graph_detail::stable_tag, > VertexIterStability>::value), "Named graphs cannot use vecS as > vertex container and remove vertices; the lack of vertex > descriptor stability > 10:43 < zao> (which iterator stability is a proxy for) means that the name -> > vertex mapping would need to be completely rebuilt after each deletion. See > https://svn.boost.org/trac/boost/ticket/7863 for more information > and a test case."); > 10:45 < zao> neoclust: The bug indicates that this has been the cause of > subtly broken behaviour in the past and that the assert is there to cause a > hard compile-time failure instead. > > >> oqgraph engine fails to build with boost 1.54.0 >> ----------------------------------------------- >> >> Key: MDEV-4795 >> URL: https://mariadb.atlassian.net/browse/MDEV-4795 >> Project: MariaDB Development >> Issue Type: Bug >> Affects Versions: 5.5.32 >> Environment: Slackware Linux (current tree), gcc 4.8.1, glibc 2.17 >> Reporter: Heinz Wiesinger >> Assignee: Arjen Lentz >> Priority: Minor >> Fix For: 5.5.33 >> >> >> Building MariaDB against a new boost version results in building erros for >> the OQGraph storage plugin: >> {noformat} >> [ 64%] Building CXX object >> storage/oqgraph/CMakeFiles/oqgraph.dir/graphcore.cc.o >> In file included from /usr/include/boost/graph/adjacency_list.hpp:45:0, >> from /tmp/mariadb-5.5.32/storage/oqgraph/graphcore.cc:40: >> /usr/include/boost/graph/named_graph.hpp: In instantiation of 'void >> boost::graph::named_graph<Graph, Vertex, >> VertexProperty>::removing_vertex(Vertex, VertexIterStability) [with >> VertexIterStability = boost::graph_detail::unstable_tag; Graph = >> boost::adjacency_list<boost::vecS, boost::vecS, boost::bidirectionalS, >> open_query::VertexInfo, open_query::EdgeInfo>; >> Vertex = long unsigned int; VertexProperty = open_query::VertexInfo]': >> /usr/include/boost/graph/detail/adjacency_list.hpp:2203:7: required from >> 'void boost::remove_vertex(typename Config::vertex_descriptor, >> boost::vec_adj_list_impl<G, C, B>&) [with >> Graph = boost::adjacency_list<boost::vecS, boost::vecS, >> boost::bidirectionalS, open_query::VertexInfo, open_query::EdgeInfo>; Config >> = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, >> boost::vecS, boost::bidirectionalS, open_query::VertexInfo, >> open_query::EdgeInfo>, boost::vecS, boost::vecS, boost::bidirectionalS, >> open_query::VertexInfo, open_query::EdgeInfo, boost::no_property, >> boost::listS>::config; Base = >> boost::bidirectional_graph_helper_with_property<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, >> boost::vecS, boost::bidirectionalS, open_query::VertexInfo, >> open_query::EdgeInfo>, boost::vecS, boost::vecS, boost::bidirectionalS, >> open_query::VertexInfo, open_query::EdgeInfo, boost::no_property, >> boost::listS>::config>; typename Config::vertex_descriptor = long unsigned >> int]' >> /tmp/mariadb-5.5.32/storage/oqgraph/graphcore.cc:578:35: required from here >> /usr/include/boost/graph/named_graph.hpp:318:46: error: invalid application >> of 'sizeof' to incomplete type 'boost::STATIC_ASSERTION_FAILURE<false>' >> BOOST_STATIC_ASSERT_MSG >> ((boost::is_base_of<boost::graph_detail::stable_tag,}VertexIterStability>::value), >> "Named graphs cannot use vecS as vertex container and remove vertices; the >> lack of vertex descriptor stability (which iterator stability is a proxy >> for) means that the name -> vertex mapping would need to be completely >> rebuilt after each deletion. See >> https://svn.boost.org/trac/boost/ticket/7863 for more information and a test >> case."); >> ^ >> make[2]: *** [storage/oqgraph/CMakeFiles/oqgraph.dir/graphcore.cc.o] Error 1 >> make[1]: *** [storage/oqgraph/CMakeFiles/oqgraph.dir/all] Error 2 >> make: *** [all] Error 2 >> {noformat} > > -- > This message is automatically generated by JIRA. > If you think it was sent incorrectly, please contact your JIRA administrators > For more information on JIRA, see: http://www.atlassian.com/software/jira > > -- > Arjen Lentz, Exec.Director @ Open Query (http://openquery.com) > Australian peace of mind for your MySQL/MariaDB infrastructure. > > Follow us at http://openquery.com/blog/ & http://twitter.com/openquery > > > -- > Mailing list: https://launchpad.net/~oqgraph-dev > Post to : oqgraph-dev@lists.launchpad.net > Unsubscribe : https://launchpad.net/~oqgraph-dev > More help : https://help.launchpad.net/ListHelp -- Mailing list: https://launchpad.net/~oqgraph-dev Post to : oqgraph-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~oqgraph-dev More help : https://help.launchpad.net/ListHelp