Package Details: wiredtiger 3.1.1.20190808-1

Git Clone URL: https://aur.archlinux.org/wiredtiger.git (read-only)
Package Base: wiredtiger
Description: High performance, scalable, production quality, NoSQL, Open Source extensible platform for data management
Upstream URL: http://source.wiredtiger.com/
Licenses: GPL
Submitter: felixonmars
Maintainer: chrbayer (jamespharvey20)
Last Packager: jamespharvey20
Votes: 6
Popularity: 0.24
First Submitted: 2019-01-18 22:09
Last Updated: 2019-08-10 02:45

Pinned Comments

jamespharvey20 commented on 2019-08-21 22:53

As of 4.2.0, this is no longer required by aur/mongodb.

Upstream broke mongodb from using wiredtiger as a separate library. Apparently they don't test having them be separate during development or testing.

Upstream advised to not have them be separate packages at least for now, with it being unknown if they will get around to fixing them to be able to be separate again, or will just remove the option entirely. https://jira.mongodb.org/browse/SERVER-42813

Because that leaves this package only required by aur/mongodb-3.4, I think it's best to leave the package at this version and no longer update it, unless 4.2.x is fixed so they can be separate again, or something stops working with mongodb-3.4.

Latest Comments

1 2 3 4 Next › Last »

phraktal commented on 2019-09-27 02:09

The package does not compile at the moment. While mongodb 4.2 does not require it, another package, unifi depends on mongo 4.0, which in turn depends on wiredtiger.

I would be good the package could be fixed to compile so that one can install an older version of mongo to make unifi work, until they update their thing.

jamespharvey20 commented on 2019-08-21 22:53

As of 4.2.0, this is no longer required by aur/mongodb.

Upstream broke mongodb from using wiredtiger as a separate library. Apparently they don't test having them be separate during development or testing.

Upstream advised to not have them be separate packages at least for now, with it being unknown if they will get around to fixing them to be able to be separate again, or will just remove the option entirely. https://jira.mongodb.org/browse/SERVER-42813

Because that leaves this package only required by aur/mongodb-3.4, I think it's best to leave the package at this version and no longer update it, unless 4.2.x is fixed so they can be separate again, or something stops working with mongodb-3.4.

jamespharvey20 commented on 2019-03-26 00:52

mongodb 4.0.7 has been released. Can you update to commit db5942dc1dc27f35f334ff3fb4d103b0cceb7968, so I can bump mongodb?

I'm wondering if it makes continued sense for mongodb to have wiredtiger as a separate dependency. By default, it pulls in its dependencies' source by the specific commit in its mongodb git repo. Having it use the system wiredtiger is from when they were in community.

Some of its dependencies can be specified to use the system-installed packages, but can't, because they either require older versions than Arch has, or have their own in-repo patches they didn't submit upstream. Like, asio, icu, boost, and strangely even mongo-c.

Since if you're going to use mongodb, you have to have wiredtiger by one of these methods, and wiredtiger isn't used for anything other than mongodb, having them separate seems like it's just adding extra steps for users to build. (mongodb-3.4 does of course depend on wiredtiger, but I'm not sure it's safe for it to be given the commit current stable mongodb requires for wiredtiger anyway.)

jamespharvey20 commented on 2019-03-05 09:39

Wait, that's not the right way to go. Upstream's python scripts are for python2. Someone should argue to them to change them to python3, but in the meantime, it's better to leave them running python2 as they were designed to do. These changes leave it using python2, and builds without error and with the man pages, both with makepkg and in a clean chroot using devtools.

EDIT: Added removal of --enable-verbose, as it's no longer an upstream option and configure just complains about it.

EDIT2: Apparently there's a bug/unwanted application of feature here, butchering the diff's index line.

diff --git a/PKGBUILD b/PKGBUILD
index [`fbad68b`](https://aur.archlinux.org/cgit/aur.git/commit/?h=wiredtiger&id=fbad68b)..b414875 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,20 +4,21 @@
 pkgname=wiredtiger
 pkgver=3.1.0.20190207
 _commit=bedf230af338faa9b9ba8741b9a2e5f36353e2f0
-pkgrel=2
+pkgrel=3
 pkgdesc="High performance, scalable, production quality, NoSQL, Open Source extensible platform for data management"
 arch=('x86_64')
 url="<http://source.wiredtiger.com/>"
 license=('GPL')
 depends=('snappy' 'lz4' 'zlib' 'gperftools')
-makedepends=('aspell-en')
+makedepends=('aspell-en' 'doxygen' 'python2')
 source=("$pkgname-$_commit.tar.gz::<https://github.com/wiredtiger/wiredtiger/archive/>$_commit.tar.gz")
 sha512sums=('57153f1ea8b7278fcd724d5aa910bf0d5dabebeb8754f5eabd49be9cae8cb83b266a962224fc2784b15d7f1d22e57a7ff2202b84838b147879401a24e30e78af')

 prepare() {
   mv wiredtiger-{$_commit,$pkgver}
-  sed -i 's/print\(.*\)$/print(\1)/' ${srcdir}/wiredtiger-${pkgver}/dist/wtperf_config.py
   sed -i 's/\\n/^^/g' ${srcdir}/wiredtiger-${pkgver}/src/docs/Doxyfile
+  sed -i '30s/python/python2/' ${srcdir}/wiredtiger-${pkgver}/src/docs/tools/doxfilter
+  sed -i '38s/python/python2/' ${srcdir}/wiredtiger-${pkgver}/dist/s_docs
 }

 build() {
@@ -28,7 +29,6 @@ build() {
               --enable-leveldb \
               --enable-lz4 \
               --enable-tcmalloc \
-              --enable-verbose \
               --with-builtins=snappy,zlib
   make
 }

jamespharvey20 commented on 2019-03-05 09:10

Adding doxygen and python3 to makedepends makes the man pages build in a clean chroot.

EDIT: Wrong way to go, see follow-up comment.

chrbayer commented on 2019-02-20 14:07

@Rogach Thank you very much for your work, that fixes the build and makes the generation of the man pages possible. Since the man pages are not built using clear chroot, there seems to be something else missing in the dependencies.

Nevertheless, this is far better that before, I pushed your fixes.

Thank you very much again!

muhviehstarr commented on 2019-02-19 11:44

using extra-x86_64-build from devtools package is much easier https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_clean_chroot

Rogach commented on 2019-02-17 20:17

@chrbayer @gps @es_18

The culprit is not in the python version (mostly). Build failed due to warnings during docs generation being treated as errors (make docs/index.html). But since the documentation was generated quite fine anyway, the second run of makepkg succeeds (incidentally, that's probably why previous commenters had success with various python aliases and replacement scripts - they probably added a tweak to PKGBUILD and ran makepkg again, so the build appeared to be "fixed").

There are three possible sources of warnings (that I managed to identify): absent aspell dictionary, wtperf_config.py print statement, and doxygen failing to process newlines in aliases properly. This patch to PKGBUILD seems to address all those issues:

--- PKGBUILD.orig   2019-02-17 13:47:45.764019685 +0300
+++ PKGBUILD    2019-02-17 23:16:02.329803622 +0300
@@ -10,11 +10,14 @@
 url="http://source.wiredtiger.com/"
 license=('GPL')
 depends=('snappy' 'lz4' 'zlib' 'gperftools')
+makedepends=('aspell-en')
 source=("$pkgname-$_commit.tar.gz::https://github.com/wiredtiger/wiredtiger/archive/$_commit.tar.gz")
 sha512sums=('57153f1ea8b7278fcd724d5aa910bf0d5dabebeb8754f5eabd49be9cae8cb83b266a962224fc2784b15d7f1d22e57a7ff2202b84838b147879401a24e30e78af')

 prepare() {
   mv wiredtiger-{$_commit,$pkgver}
+  sed -i 's/print\(.*\)$/print(\1)/' ${srcdir}/wiredtiger-${pkgver}/dist/wtperf_config.py
+  sed -i 's/\\n/^^/g' ${srcdir}/wiredtiger-${pkgver}/src/docs/Doxyfile
 }

 build() {

P.S. I did not have the time to try chroot environment - but I do not understand why it could help. I thought that all above errors will still happen in clean chroot?

gps commented on 2019-02-13 13:07

trying to build this package under Manjaro I get this error:

SyntaxError: invalid syntax
/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.20190207/src/docs/devdoc-schema.dox:12: warning: image file schema_generic.png \ n \ image is not found in IMAGE_PATH: assuming external image.
/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.20190207/src/docs/devdoc-schema.dox:12: warning: Illegal command \ n as part of a image
/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.20190207/src/docs/devdoc-schema.dox:21: warning: image file schema_create.png \ n \ image is not found in IMAGE_PATH: assuming external image.
/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.20190207/src/docs/devdoc-schema.dox:21: warning: Illegal command \ n as part of a image
/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.20190207/src/docs/devdoc-schema.dox:29: warning: image file schema_rename.png \ n \ image is not found in IMAGE_PATH: assuming external image.
/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.20190207/src/docs/devdoc-schema.dox:29: warning: Illegal command \ n as part of a image
make [2]: *** [Makefile: 3660: docs / index.html] Error 1
make [2]: Leaving the '/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.2019090207' directory
make [1]: *** [Makefile: 2693: all-recursive] Error 1
make [1]: Leaving the '/var/tmp/pamac-build-pawel/wiredtiger/src/wiredtiger-3.1.0.2019090207' directory
make: *** [Makefile: 1384: all] Error 2
==> ERROR: An error has occurred in build ().
    Aborting ...

FrederickZh commented on 2019-02-13 06:46

@es_18

You can run alias python='python2' before build. Imho PKGBUILD itself should either include something like this or patch the code as Python 3 is the default interpreter in Arch.