mongodb ftbfs with GCC 5 and boost 1.58

Bug #1483400 reported by Matthias Klose
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-mongodb (Ubuntu)
Fix Released
Critical
Martin Pitt
mongodb (Ubuntu)
Fix Released
Critical
Martin Pitt

Bug Description

mongodb and juju-mongodb ftbfs with GCC 5 and boost 1.58. looks like mongodb didn't see any updates from the 2.6 branch for a year (at 2.6.10 now). just building without -Werror is not an option

Tags: ftbfs patch
Revision history for this message
Matthias Klose (doko) wrote :

blocks GCC 5.

Changed in juju-mongodb (Ubuntu):
importance: Undecided → Critical
milestone: none → ubuntu-15.08
status: New → Confirmed
Revision history for this message
Martin Pitt (pitti) wrote :
Download full text (3.9 KiB)

This debdiff gets over the actual build failures, but it now fails here:

scons --smokedbprefix=/home/martin/ubuntu/tmp/juju-mongodb-2.4.10/debian/tmp-test smoke --use-system-snappy --use-system-pcre --use-system-boost --ssl --nostrip -j4 --allocator=tcmalloc --use-system-tcmalloc --disable-scripting
scons: Reading SConscript files ...
scons version: 2.3.6
python version: 2 7 10 'final' 0
Checking whether the C++ compiler works... (cached) yes
Checking for C++ header file boost/filesystem/operations.hpp... (cached) yes
Checking for C++ library boost_thread-mt... (cached) no
Checking for C++ library boost_thread... (cached) yes
Checking for C++ library boost_filesystem-mt... (cached) no
Checking for C++ library boost_filesystem... (cached) yes
Checking for C++ library boost_program_options-mt... (cached) no
Checking for C++ library boost_program_options... (cached) yes
Checking for C++ library boost_system-mt... (cached) no
Checking for C++ library boost_system... (cached) yes
Checking for C header file unistd.h... (cached) yes
Checking whether clock_gettime is declared... (cached) yes
Checking for C library rt... (cached) yes
Checking for C++ header file execinfo.h... (cached) yes
Checking whether backtrace is declared... (cached) yes
Checking whether backtrace_symbols is declared... (cached) yes
Checking whether backtrace_symbols_fd is declared... (cached) yes
Checking for C library pcap... (cached) yes
Checking for C library tcmalloc... (cached) yes
scons: done reading SConscript files.
scons: Building targets ...
generate_buildinfo(["build/buildinfo.cpp"], ['\n#include <string>\n#include <boost/version.hpp>\n\n#include "mongo/util/version.h"\n\nnamespace mongo {\n const char * gitVersion() { return "%(git_version)s"; }\n const char * compiledJSEngine() { return "%(js_engine)s"; }\n const char * allocator() { return "%(allocator)s"; }\n const char * loaderFlags() { return "%(loader_flags)s"; }\n const char * compilerFlags() { return "%(compiler_flags)s"; }\n std::string sysInfo() { return "%(sys_info)s BOOST_LIB_VERSION=" BOOST_LIB_VERSION ; }\n} // namespace mongo\n'])
/usr/bin/python /home/martin/ubuntu/tmp/juju-mongodb-2.4.10/buildscripts/smoke.py --with-cleanbb --smoke-db-prefix /home/martin/ubuntu/tmp/juju-mongodb-2.4.10/debian/tmp-test test
Traceback (most recent call last):
  File "/home/martin/ubuntu/tmp/juju-mongodb-2.4.10/buildscripts/smoke.py", line 52, in <module>
    from pymongo import Connection
ImportError: cannot import name Connection
scons: *** [smoke] Error 1

Indeed this doesn't seem to work at all:

$ python -c 'from pymongo import Connection'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: cannot import name Connection

>>> import pymongo
>>> dir(pymongo)
['ALL', 'ASCENDING', 'CursorType', 'DESCENDING', 'DeleteMany', 'DeleteOne', 'GEO2D', 'GEOHAYSTACK', 'GEOSPHERE', 'HASHED', 'IndexModel', 'InsertOne', 'MAX_SUPPORTED_WIRE_VERSION', 'MIN_SUPPORTED_WIRE_VERSION', 'MongoClient', 'MongoReplicaSetClient', 'OFF', 'ReadPreference', 'ReplaceOne', 'ReturnDocument', 'SLOW_ONLY', 'TEXT', 'UpdateMany', 'UpdateOne', 'WriteConcern', '__builtins__', '__doc__', '__file__', '_...

Read more...

Revision history for this message
Martin Pitt (pitti) wrote :

s/Connection/MongoClient/ in buildscripts/smoke.py seems to work better, as per

  http://api.mongodb.org/python/current/tutorial.html

Changed in juju-mongodb (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Martin Pitt (pitti)
Changed in mongodb (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Martin Pitt (pitti)
Revision history for this message
Martin Pitt (pitti) wrote :
Martin Pitt (pitti)
Changed in juju-mongodb (Ubuntu):
status: In Progress → Fix Committed
tags: added: patch
Martin Pitt (pitti)
Changed in mongodb (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mongodb - 1:2.6.10-0ubuntu1

---------------
mongodb (1:2.6.10-0ubuntu1) wily; urgency=medium

  * New upstream release
  * Fix FTBFS: (LP: #1483400)
    - Add 00git_boost_1.56.patch: Fix "std::swap" failure with current boost.
    - Add disable-warnings.patch: Don't fail to build on "unused-variable" and
      "maybe-uninitialized" warnings (new from g++ 5).

 -- Martin Pitt <email address hidden> Tue, 11 Aug 2015 10:19:10 +0200

Changed in mongodb (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package juju-mongodb - 2.4.10-0ubuntu4

---------------
juju-mongodb (2.4.10-0ubuntu4) wily; urgency=medium

  * Fix FTBFS: (LP: #1483400)
    - Add 00git_boost_1.56.patch: Fix "std::swap" failure with current boost.
      (Backported from upstream git)
    - Add 00git_pymongo3.patch: Fix buildscripts/smoke.py for PyMongo 3.
      (Backported from upstream git)
    - Add no-unused-variable.patch: Don't fail to build on "unused-variable"
      warning.

 -- Martin Pitt <email address hidden> Tue, 11 Aug 2015 10:57:23 +0200

Changed in juju-mongodb (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.