[SERVER-37768] Platform Support: Add Community & Enterprise Debian 10 x64 Created: 26/Oct/18  Updated: 29/Oct/23  Resolved: 16/Sep/19

Status: Closed
Project: Core Server
Component/s: Build
Affects Version/s: None
Fix Version/s: 4.2.1, 4.3.1

Type: Task Priority: Major - P3
Reporter: April Schoffer Assignee: John Chen (Inactive)
Resolution: Fixed Votes: 12
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
is depended on by SERVER-42580 libcurl Dependency Issues on Debian B... Closed
Documented
is documented by DOCS-13064 Docs for SERVER-37768: Platform Suppo... Closed
Duplicate
duplicates SERVER-42580 libcurl Dependency Issues on Debian B... Closed
is duplicated by SERVER-42115 Platform Support: add Debian 10 "buster" Closed
Related
related to SERVER-44491 Backport MongoDB 3.6, 4.0 to Debian 1... Closed
is related to SERVER-35885 libcurl Dependency Issues on Latest D... Closed
is related to SERVER-42876 Debian Instllation - Wrong Library li... Closed
is related to DOCS-12162 website Debian install by .deb instru... Closed
is related to SERVER-44606 Add Debian10 to enterprise repo config Closed
Backwards Compatibility: Fully Compatible
Backport Requested:
v4.2
Sprint: Build 2019-10-21
Participants:
Story Points: 3

 Description   

Platform Support: Add Community & Enterprise Debian 10 x64



 Comments   
Comment by Ivan Strelnikov [ 08/Nov/19 ]

I created https://jira.mongodb.org/browse/SERVER-44491
Please comment, if you are involved.

Comment by Jeremy Lecour [ 24/Oct/19 ]

@Connecting Media Oh, snap. Thanks for noticing my mistake. It works with the proper package source.

Comment by Connecting Media [ 24/Oct/19 ]

@Jeremy Lecour you are still using the stretch (Debian 9) packages. Change your apt source from http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.2/main to http://repo.mongodb.org/apt/debian buster/mongodb-org/4.2/main

Comment by Jeremy Lecour [ 24/Oct/19 ]

I can't get to install MongoDB 4.2.1 on Debian 10. It still depends on libcurl3 :

root@vagrant-buster:~# apt show mongodb-org-server
Package: mongodb-org-server
Version: 4.2.1
Priority: optional
Section: database
Source: mongodb-org
Maintainer: Ernie Hershey <ernie.hershey@mongodb.com>
Installed-Size: 71.7 MB
Depends: libc6 (>= 2.18), libcurl3 (>= 7.16.2), libgcc1 (>= 1:4.2), libssl1.1 (>= 1.1.0), adduser, tzdata
Conflicts: mongo-10gen, mongo-10gen-enterprise, mongo-10gen-enterprise-server, mongo-10gen-server, mongo-10gen-unstable, mongo-10gen-unstable-enterprise, mongo-10gen-unstable-enterprise-mongos, mongo-10gen-unstable-enterprise-server, mongo-10gen-unstable-enterprise-shell, mongo-10gen-unstable-enterprise-tools, mongo-10gen-unstable-mongos, mongo-10gen-unstable-server, mongo-10gen-unstable-shell, mongo-10gen-unstable-tools, mongo18-10gen, mongo18-10gen-server, mongo20-10gen, mongo20-10gen-server, mongodb, mongodb-10gen, mongodb-10gen-enterprise, mongodb-10gen-unstable, mongodb-10gen-unstable-enterprise, mongodb-10gen-unstable-enterprise-mongos, mongodb-10gen-unstable-enterprise-server, mongodb-10gen-unstable-enterprise-shell, mongodb-10gen-unstable-enterprise-tools, mongodb-10gen-unstable-mongos, mongodb-10gen-unstable-server, mongodb-10gen-unstable-shell, mongodb-10gen-unstable-tools, mongodb-clients, mongodb-dev, mongodb-enterprise, mongodb-enterprise-mongos, mongodb-enterprise-server, mongodb-enterprise-shell, mongodb-enterprise-tools, mongodb-enterprise-unstable, mongodb-enterprise-unstable-mongos, mongodb-enterprise-unstable-server, mongodb-enterprise-unstable-shell, mongodb-enterprise-unstable-tools, mongodb-nightly, mongodb-org-unstable, mongodb-org-unstable-mongos, mongodb-org-unstable-server, mongodb-org-unstable-shell, mongodb-org-unstable-tools, mongodb-server, mongodb-stable, mongodb18-10gen, mongodb20-10gen
Homepage: http://www.mongodb.org
Download-Size: 18.2 MB
APT-Sources: http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.2/main amd64 Packages
Description: MongoDB database server
 MongoDB is built for scalability, performance and high availability, scaling from single server deployments to large, complex multi-site architectures. By leveraging in-memory computing, MongoDB provides high performance for both reads and writes. MongoDB’s native replication and automated failover enable enterprise-grade reliability and operational flexibility.
 .
 MongoDB is an open-source database used by companies of all sizes, across all industries and for a wide variety of applications. It is an agile database that allows schemas to change quickly as applications evolve, while still providing the functionality developers expect from traditional databases, such as secondary indexes, a full query language and strict consistency.
 .
 MongoDB has a rich client ecosystem including hadoop integration, officially supported drivers for 10 programming languages and environments, as well as 40 drivers supported by the user community.
 .
 MongoDB features:
 * JSON Data Model with Dynamic Schemas
 * Auto-Sharding for Horizontal Scalability
 * Built-In Replication for High Availability
 * Rich Secondary Indexes, including geospatial
 * TTL indexes
 * Text Search
 * Aggregation Framework & Native MapReduce
 .
 This package contains the MongoDB server software, default configuration files, and init.d scripts.N: There is 1 additional record. Please use the '-a' switch to see it

How did you manage to install it?

Comment by Connecting Media [ 23/Oct/19 ]

4.2.1 has finally be released. And I can confirm it working.

However our requests for backports to 4.0 and 3.6 have not been heard.

Comment by Enrico Morelli [ 11/Oct/19 ]

It seems very difficult to create a deb package since it takes over 4 months

Comment by huseyin uslu [ 10/Oct/19 ]

waiting for this point release for months and still no luck and seems we won't see it any time soon.

Comment by Kelsey Schubert [ 02/Oct/19 ]

Hi all,

Sorry for the poor communication. This ticket has been resolved and closed with a fixversion of 4.2.1, which indicates that it will be available in the next patch release of MongoDB. I would expect that MongoDB 4.2.1 would be released later this month.

Kind regards,
Kelsey

Comment by Connecting Media [ 01/Oct/19 ]

The communictation philisophy is just great.

Comment by huseyin uslu [ 30/Sep/19 ]

can we at least get an ETA on this?

Comment by Enrico Morelli [ 30/Sep/19 ]

Another month goes away and still no idea when this package will be released.  

Comment by huseyin uslu [ 24/Sep/19 ]

any updates on this? 

Comment by Githook User [ 23/Sep/19 ]

Author:

{'name': 'John Chen', 'email': 'john.chen@mongodb.com'}

Message: SERVER-37768 Backport Debian 10 to v4.2
Branch: v4.2
https://github.com/mongodb/mongo/commit/ce1b27cb76dd0709273ac80423b9a35d72edc6fd

Comment by Chad Kreimendahl [ 18/Sep/19 ]

I'd like to request a backport to v.3.6

Comment by Connecting Media [ 17/Sep/19 ]

I'd like to request a backport to v4.0.
And that the docs get updated.

Comment by Githook User [ 16/Sep/19 ]

Author:

{'email': 'john.chen@mongodb.com', 'name': 'John Chen'}

Message: SERVER-37768 Added Debian10 build variant
Branch: master
https://github.com/mongodb/mongo/commit/0d0c7ec99f6005b05ab82cd450e395771e707582

Comment by Enrico Morelli [ 12/Sep/19 ]

No idea when the package will be released? Come on, I cannot believe it takes months to release a package. It's embarrassing.

Comment by Yoann LE TOUCHE [ 27/Aug/19 ]

Any ETA on the packaging for Debian 10 ?

Comment by Enrico Morelli [ 09/Aug/19 ]

Is there a roadmap for the mongo package release running on Debian 10?

Comment by Connecting Media [ 05/Aug/19 ]

The release and the underlying changes were no suprise. Years in the making. How is it that the work on it hasn't even started after the release?
This is quite frankly baffling.

Please note that if there would be a delay and the release would be delayed by a couple of weeks due to difficulties with implementing it, that would be a completely different story.

Comment by Chad Kreimendahl [ 02/Aug/19 ]

Since they seem to schedule their releases months ahead of time, it would be great if in the future mongo had packages ready to go for the "release" version of debian when it comes out. 

Comment by April Schoffer [ 02/Aug/19 ]

We are excited about the recent release of Buster. Support for Debian 10 is certainly on our roadmap, and the work to add this platform is nearly underway. 

Comment by Enrico Morelli [ 02/Aug/19 ]

I tried to install mongo downloading the deb package and forcing the installation:

 

apt-get download mongodb-org mongodb-org-shell mongodb-org-server mongodb-org-mongos mongodb-org-tools

dpkg --force-all -i mongodb-org*

.

.

.

Setting up mongodb-org (4.0.11) ...
dpkg: mongodb-org-server: dependency problems, but configuring anyway as you requested:
mongodb-org-server depends on libcurl3 (>= 7.16.2); however:
Package libcurl3 is not installed.

.

.

At the end I tried to execute mongod, but didn't start because no libcurl3 is installed:

mongod: /usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by mongod)

 

Indeed

$ strings /usr/lib/x86_64-linux-gnu/libcurl.so.4|grep OPENSSL
OPENSSL_load_builtin_modules
OPENSSL_sk_pop_free
OPENSSL_sk_pop
OPENSSL_sk_num
OPENSSL_sk_value
CURL_OPENSSL_4
OPENSSL_1_1_1
OPENSSL_1_1_0

 

 

 

Comment by Mark Raymond [ 02/Aug/19 ]

Comparing libcurl3 and libcurl4 on Debian:

libcurl3/usr/lib/x86_64-linux-gnu:
total 512
lrwxrwxrwx 1 mark mark 12 Feb 4 20:55 libcurl.so.3 -> libcurl.so.4
lrwxrwxrwx 1 mark mark 16 Feb 4 20:55 libcurl.so.4 -> libcurl.so.4.4.0
rw-rr- 1 mark mark 522656 Feb 4 20:55 libcurl.so.4.4.0

libcurl4/usr/lib/x86_64-linux-gnu:
total 576
lrwxrwxrwx 1 mark mark 16 Jun 14 19:23 libcurl.so.4 -> libcurl.so.4.5.0
rw-rr- 1 mark mark 588232 Jun 14 19:23 libcurl.so.4.5.0

On Ubuntu 18.04, they both contain exactly the same list of files, and libcurl3 no longer contains libcurl.so.3:

libcurl3/usr/lib/x86_64-linux-gnu:
total 512
lrwxrwxrwx 1 mark mark 16 Mar 5 2018 libcurl.so.4 -> libcurl.so.4.5.0
rw-rr- 1 mark mark 518600 Mar 5 2018 libcurl.so.4.5.0

libcurl4/usr/lib/x86_64-linux-gnu:
total 512
lrwxrwxrwx 1 mark mark 16 May 16 13:40 libcurl.so.4 -> libcurl.so.4.5.0
rw-rr- 1 mark mark 518600 May 16 13:40 libcurl.so.4.5.0

Based on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=900511, I think libcurl3 has actually contained libcurl.so.4 for a long time (it's in all libcurl3 packages still available to download from the Debian repos), so it might be fine to change the dependency from libcurl3 to libcurl3 | libcurl4, and ensure it's actually libcurl.so.4 that's linked against? (It may well be the case that mongodb is in practice linking against libcurl.so.4, otherwise I think it wouldn't work on Ubuntu 18.04.)

Comment by Connecting Media [ 02/Aug/19 ]

It really can't be that hard to make the depency either optional or upgrade it to libcurl4 (or course it would need to be compiled against that).

What's really wondering is that this was not a surprise. It was clear for over a year that this change was coming. So why has no one checked before?

And lastly, the way I managed to get it to install on Debian 10, was by adding the Debian 9 repo, giving those a lower pin priority (so it would never automatically choose any of those packages) and then install it explicity like this:

apt-get install -y --allow-downgrades mongodb-org-server nginx-light libcurl3 curl/stretch

Comment by Enrico Morelli [ 02/Aug/19 ]

It seems like no. The only libcurl3 package available are the following:

libcurl3-gnutls/stable,now 7.64.0-4 amd64 [installed,automatic]
easy-to-use client-side URL transfer library (GnuTLS flavour)

libcurl3-nss/stable 7.64.0-4 amd64
easy-to-use client-side URL transfer library (NSS flavour)

 

Comment by Chad Kreimendahl [ 01/Aug/19 ]

Does stretch-backports have libcurl3?

Comment by Enrico Morelli [ 01/Aug/19 ]

Good, it should be possible to create a new debian package where libcurl is not mandatory so that it can be installed on debian 10.

Comment by Maxime Beugnet [ 31/Jul/19 ]

That's because Debian moved to libcurl4 morelli@cerm.unifi.it.
And I don't understand why MongoDB needs this dependency. It could be optional / recommended as far as I know but not mandatory.

Comment by Enrico Morelli [ 31/Jul/19 ]

For the moment it's not possible to install mongo on debian 10. I tried but I receive the following error:

 

The following packages have unmet dependencies:
mongodb-org-server : Depends: libcurl3 (>= 7.16.2) but it is not installable
E: Unable to correct problems, you have held broken packages.

Comment by Chad Kreimendahl [ 18/Jul/19 ]

No, but in the case of 3.4, backports was used to get the correct version of openssl libraries used. That allowed it to run on stretch, when they only have a mongo build on 3.4 for jessie.

Comment by Blazej Kaczorowski [ 17/Jul/19 ]

there is no mongodb in strech-backports ... 

Comment by Chad Kreimendahl [ 16/Jul/19 ]

Have you tried installing stretch-backports into your apt sources.list ?  There's a strong chance this will work for any packages that support stretch.  We do this to run 3.4 in an stretch environment with jessie-backports.

Comment by Blazej Kaczorowski [ 16/Jul/19 ]

I have tried to build on fresh Debian10 64bit from source using https://github.com/patrikx3/docker-debian-testing-mongodb-stable but no luck also

Generated at Thu Feb 08 04:46:57 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.