2016-09-02 10:57:45 |
Matthias Klose |
bug |
|
|
added bug |
2016-09-02 10:57:57 |
Matthias Klose |
tags |
|
ftbfs |
|
2016-09-02 10:58:05 |
Matthias Klose |
mir (Ubuntu): status |
New |
Confirmed |
|
2016-09-02 10:58:10 |
Matthias Klose |
mir (Ubuntu): importance |
Undecided |
Critical |
|
2016-09-02 10:58:15 |
Matthias Klose |
mir (Ubuntu): milestone |
|
ubuntu-16.09 |
|
2016-09-02 11:08:56 |
Alan Griffiths |
mir (Ubuntu): assignee |
|
Alan Griffiths (alan-griffiths) |
|
2016-09-02 19:38:13 |
Alan Griffiths |
mir (Ubuntu): assignee |
Alan Griffiths (alan-griffiths) |
|
|
2016-09-05 01:32:47 |
Daniel van Vugt |
bug task added |
|
mir |
|
2016-09-05 01:32:53 |
Daniel van Vugt |
mir: importance |
Undecided |
Critical |
|
2016-09-05 01:32:56 |
Daniel van Vugt |
mir: importance |
Critical |
High |
|
2016-09-05 01:33:00 |
Daniel van Vugt |
mir (Ubuntu): importance |
Critical |
High |
|
2016-09-05 01:33:04 |
Daniel van Vugt |
mir: milestone |
|
0.25.0 |
|
2016-09-05 01:37:07 |
Daniel van Vugt |
summary |
mir fails to build with protobuf3 |
Mir test fails with protobuf3: Protobuf-can-be-reloaded (SEGFAULT) |
|
2016-09-05 01:38:38 |
Daniel van Vugt |
description |
mir fails to build with protobuf3. build logs at
https://launchpad.net/ubuntu/+source/mir/0.24.0+16.10.20160815.3-0ubuntu2
In file included from /«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/server/frontend/protobuf_message_processor.cpp:24:0:
/«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/server/mir/frontend/template_protobuf_message_processor.h: In function ‘void mir::frontend::detail::invoke(Self*, Server*, void (ServerX::*)(const ParameterMessage*, ResultMessage*, google::protobuf::Closure*), const mir::frontend::detail::Invocation&)’:
/«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/server/mir/frontend/template_protobuf_message_processor.h:68:13: error: ‘NewPermanentCallback’ is not a member of ‘google::protobuf’
google::protobuf::NewPermanentCallback<
^~~~~~
/«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/server/mir/frontend/template_protobuf_message_processor.h:68:13: note: suggested alternative:
In file included from /usr/include/google/protobuf/stubs/common.h:48:0,
from /«BUILDDIR»/mir-0.24.0+16.10.20160815.3/obj-x86_64-linux-gnu/src/protobuf/mir_protobuf.pb.h:9,
from /«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/common/mir/protobuf/display_server.h:22,
from /«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/server/frontend/display_server.h:22,
from /«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/server/frontend/protobuf_message_processor.cpp:19:
/usr/include/google/protobuf/stubs/callback.h:524:36: note: ‘google::protobuf::internal::NewPermanentCallback’
inline ResultCallback2<R, A1, A2>* NewPermanentCallback(
^~~~~~~~~~~~~~~~~~~~
In file included from /«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/server/frontend/protobuf_message_processor.cpp:24:0:
/«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/server/mir/frontend/template_protobuf_message_processor.h:69:21: error: expected primary-expression before ‘,’ token
Self,
^
/«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/server/mir/frontend/template_protobuf_message_processor.h:70:43: error: expected primary-expression before ‘,’ token
::google::protobuf::uint32,
^
/«BUILDDIR»/mir-0.24.0+16.10.20160815.3/src/include/server/mir/frontend/template_protobuf_message_processor.h:71:59: error: expected ‘(’ before ‘>’ token
typename result_ptr_t<ResultMessage>::type>(
^ |
builds with 3.0.0-7, then has one failing test:
test 19
Start 19: Protobuf-can-be-reloaded
19: Test command: /<<BUILDDIR>>/mir-0.24.0+16.10.20160815.3/obj-powerpc64le-linux-gnu/bin/mir_test_reload_protobuf
19: Test timeout computed to be: 9.99988e+06
19/19 Test #19: Protobuf-can-be-reloaded ..........................***Exception: SegFault 0.17 sec
95% tests passed, 1 tests failed out of 19
Total Test time (real) = 125.73 sec
The following tests FAILED:
19 - Protobuf-can-be-reloaded (SEGFAULT)
Errors while running CTest
Makefile:85: recipe for target 'test' failed
make[2]: *** [test] Error 8 |
|
2016-09-05 09:03:41 |
Alan Griffiths |
mir (Ubuntu): assignee |
|
Alan Griffiths (alan-griffiths) |
|
2016-09-05 09:15:12 |
Daniel van Vugt |
mir: assignee |
|
Alan Griffiths (alan-griffiths) |
|
2016-09-05 09:15:18 |
Daniel van Vugt |
mir: status |
New |
In Progress |
|
2016-09-05 09:16:00 |
Daniel van Vugt |
bug task added |
|
protobuf (Ubuntu) |
|
2016-09-05 11:12:15 |
Alan Griffiths |
attachment added |
|
Forward port fix from protobuf 2.6 https://bugs.launchpad.net/ubuntu/+source/mir/+bug/1619616/+attachment/4734807/+files/fix-protobuf |
|
2016-09-05 13:59:19 |
Alan Griffiths |
attachment added |
|
fix-protobuf https://bugs.launchpad.net/ubuntu/+source/mir/+bug/1619616/+attachment/4734930/+files/fix-protobuf |
|
2016-09-06 01:37:40 |
Daniel van Vugt |
protobuf (Ubuntu): assignee |
|
Alan Griffiths (alan-griffiths) |
|
2016-09-06 01:37:44 |
Daniel van Vugt |
protobuf (Ubuntu): importance |
Undecided |
High |
|
2016-09-06 01:37:47 |
Daniel van Vugt |
protobuf (Ubuntu): status |
New |
In Progress |
|
2016-09-06 01:37:55 |
Daniel van Vugt |
mir: status |
In Progress |
Confirmed |
|
2016-09-06 01:38:08 |
Daniel van Vugt |
mir: assignee |
Alan Griffiths (alan-griffiths) |
|
|
2016-09-06 01:38:11 |
Daniel van Vugt |
mir (Ubuntu): assignee |
Alan Griffiths (alan-griffiths) |
|
|
2016-09-07 10:25:29 |
Iain Lane |
bug |
|
|
added subscriber Iain Lane |
2016-09-07 11:34:22 |
Alan Griffiths |
attachment added |
|
fix-protobuf https://bugs.launchpad.net/ubuntu/+source/mir/+bug/1619616/+attachment/4736088/+files/fix-protobuf |
|
2016-09-07 12:48:44 |
Alan Griffiths |
attachment added |
|
fix-protobuf https://bugs.launchpad.net/ubuntu/+source/mir/+bug/1619616/+attachment/4736108/+files/fix-protobuf |
|
2016-09-08 01:34:28 |
Daniel van Vugt |
mir: status |
Confirmed |
Invalid |
|
2016-09-08 01:34:32 |
Daniel van Vugt |
mir (Ubuntu): status |
Confirmed |
Invalid |
|
2016-09-08 10:52:06 |
Alan Griffiths |
description |
builds with 3.0.0-7, then has one failing test:
test 19
Start 19: Protobuf-can-be-reloaded
19: Test command: /<<BUILDDIR>>/mir-0.24.0+16.10.20160815.3/obj-powerpc64le-linux-gnu/bin/mir_test_reload_protobuf
19: Test timeout computed to be: 9.99988e+06
19/19 Test #19: Protobuf-can-be-reloaded ..........................***Exception: SegFault 0.17 sec
95% tests passed, 1 tests failed out of 19
Total Test time (real) = 125.73 sec
The following tests FAILED:
19 - Protobuf-can-be-reloaded (SEGFAULT)
Errors while running CTest
Makefile:85: recipe for target 'test' failed
make[2]: *** [test] Error 8 |
builds with 3.0.0-7, then has one failing test:
test 19
Start 19: Protobuf-can-be-reloaded
19: Test command: /<<BUILDDIR>>/mir-0.24.0+16.10.20160815.3/obj-powerpc64le-linux-gnu/bin/mir_test_reload_protobuf
19: Test timeout computed to be: 9.99988e+06
19/19 Test #19: Protobuf-can-be-reloaded ..........................***Exception: SegFault 0.17 sec
95% tests passed, 1 tests failed out of 19
Total Test time (real) = 125.73 sec
The following tests FAILED:
19 - Protobuf-can-be-reloaded (SEGFAULT)
Errors while running CTest
Makefile:85: recipe for target 'test' failed
make[2]: *** [test] Error 8
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The reason this matters:
The principle downstream from Mir (Unity8) loads Mir as one of a number of plugins, several of which use protobuf. That means that we're prone to being loaded, unloaded and reloaded and don't have control of this.
We've encountered problems in this scenario before that have been traced to protobuf so we have a specific test. But other Unity8 plugins may encounter the same issue.
As seen in comment #25 the problem here is entirely down to a change in the behavior of libmirprotobuf-lite - it no longer unloads on dlclose().
This is only a problem because there is code (see patch in comment #20) that assumes that the library will not be used after a call to google::protobuf::ShutdownProtobufLibrary() unless it is reloaded. |
|
2016-09-08 11:21:48 |
Alan Griffiths |
attachment added |
|
my least bad solution https://bugs.launchpad.net/ubuntu/+source/mir/+bug/1619616/+attachment/4736828/+files/fix-protobuf |
|
2016-09-08 11:22:05 |
Alan Griffiths |
mir: milestone |
0.25.0 |
|
|
2016-09-08 11:22:12 |
Alan Griffiths |
mir (Ubuntu): milestone |
ubuntu-16.09 |
|
|
2016-09-09 02:27:24 |
Daniel van Vugt |
protobuf (Ubuntu): status |
In Progress |
Fix Committed |
|
2016-09-15 13:30:08 |
Launchpad Janitor |
protobuf (Ubuntu): status |
Fix Committed |
Fix Released |
|