Package Details: arangodb 3.2.1-1

Git Clone URL: https://aur.archlinux.org/arangodb.git (read-only)
Package Base: arangodb
Description: A multi-model NoSQL database, combining key-value, document and graph data models.
Upstream URL: https://www.arangodb.com/
Keywords: database document-store graph nosql
Licenses: Apache
Submitter: bpdp
Maintainer: sleepycat (NicoHood)
Last Packager: sleepycat
Votes: 11
Popularity: 0.235545
First Submitted: 2012-08-23 14:29
Last Updated: 2017-08-12 02:38

Latest Comments

thomasdingemanse commented on 2017-08-03 13:32

I am encountering the same problem as @rcrath below. I see the following error show up a few times in my CMake error log:

gcc-5: error: unrecognized command line option ‘-fno-plt’
make[1]: *** [CMakeFiles/cmTC_b55c3.dir/build.make:66: CMakeFiles/cmTC_b55c3.dir/CheckIncludeFile.c.o] Error 1
make[1]: Leaving directory '/home/thomas/Downloads/arangodb/src/ArangoDB-3.2.0/build/CMakeFiles/CMakeTmp'
make: *** [Makefile:126: cmTC_b55c3/fast] Error 2

I found some basic info on the -fno-plt setting (which apparently has only been completely functional since gcc6), but I don't know anything about gcc or CMake, so I don't really know what to make of this. I hope the log is somehow helpful at least.

https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html

rcrath commented on 2017-07-30 08:56

compiling with "makepkg --skipinteg -i" fails too, as follows (same as psychma I think):
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - not found
-- Looking for stdint.h
-- Looking for stdint.h - not found
-- Looking for stddef.h
-- Looking for stddef.h - not found
-- Check size of unsigned short
-- Check size of unsigned short - failed
-- Check size of unsigned int
-- Check size of unsigned int - failed
-- Check size of unsigned long
-- Check size of unsigned long - failed
CMake Error at /usr/share/cmake-3.8/Modules/TestBigEndian.cmake:41 (message):
no suitable type found
Call Stack (most recent call first):
3rdParty/V8/CMakeLists.txt:25 (TEST_BIG_ENDIAN)


-- Configuring incomplete, errors occurred!
See also "/tmp/yaourt-tmp-rich/aur-arangodb/src/ArangoDB-3.2.0/build/CMakeFiles/CMakeOutput.log".
See also "/tmp/yaourt-tmp-rich/aur-arangodb/src/ArangoDB-3.2.0/build/CMakeFiles/CMakeError.log".
==> ERROR: A failure occurred in build().
Aborting...


rcrath commented on 2017-07-30 08:51

still getting

-> Found arangodb3.service
-> Found arangodb-tmpfile.conf
-> Found arangodb-users.conf
==> Validating source files with sha512sums...
ArangoDB-3.2.0.tar.bz2 ... FAILED
ArangoDB-3.2.0.tar.bz2.asc ... Skipped
arangodb3.service ... Passed
arangodb-tmpfile.conf ... Passed
arangodb-users.conf ... Passed
==> ERROR: One or more files did not pass the validity check!
==> ERROR: Makepkg was unable to build arangodb.
==> Restart building arangodb ? [y/N]

pschyma commented on 2017-07-22 16:59

Thank you. But I'm still experiencing build failures.

-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - not found
-- Looking for stdint.h
-- Looking for stdint.h - not found
-- Looking for stddef.h
-- Looking for stddef.h - not found
-- Check size of unsigned short
-- Check size of unsigned short - failed
-- Check size of unsigned int
-- Check size of unsigned int - failed
-- Check size of unsigned long
-- Check size of unsigned long - failed
CMake Error at /usr/share/cmake-3.8/Modules/TestBigEndian.cmake:41 (message):
no suitable type found
Call Stack (most recent call first):
3rdParty/V8/CMakeLists.txt:25 (TEST_BIG_ENDIAN)


-- Configuring incomplete, errors occurred!
See also "/home/peter/builds/arangodb/src/ArangoDB-3.2.0/build/CMakeFiles/CMakeOutput.log".
See also "/home/peter/builds/arangodb/src/ArangoDB-3.2.0/build/CMakeFiles/CMakeError.log".

sleepycat commented on 2017-07-21 11:47

I've updated the package to Arango 3.2. It builds again because I added gcc5 to the makedepends. It's workaround rather than a fix, and once this is builds with current gcc again I'll be removing it. Thanks to all of you who spend time debugging this.

Arango 3.2 has some great new features: Distributed graph processing with Pregel and a suite of awesome algorithms, ClusterFoxx, and a bunch more.
You can read about it here: https://www.arangodb.com/2017/07/arangodb-3-2-rocksdb-pregel-fault-tolerant-foxx-satellite-collections/

Enjoy

rcrath commented on 2017-07-08 06:03

pgp key error, so run makepkg --skippgpcheck, build fails with following:

[ 93%] Linking CXX static library libarangoserver.a
[ 93%] Built target arangoserver
make: *** [Makefile:152: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...


snap installs ok, but fails to start via systemctl :(

pschyma commented on 2017-07-04 16:14

@guerch: There are two binary realeases that can be installed on Arch: the Docker and Snap images provided by ArangoDB. You can always use one of them.

guerch commented on 2017-07-03 16:20

Can we have a binary package? this deserves it!

cvnb commented on 2017-06-27 22:36

@pschyma: Yes, now I'm getting the same errors you see. :/

pschyma commented on 2017-06-27 20:12

The default CC flags are carried over to cmake/make.

Using the PKGBUILD from your gist I'm getting following

[ 4%] Building C object 3rdParty/zlib/zlib-1.2.8/CMakeFiles/zlibstatic.dir/inftrees.o
In file included from /home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/db/auto_roll_logger.cc:6:
In file included from /home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/db/auto_roll_logger.h:15:
In file included from /home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/port/util_logger.h:18:
In file included from /home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/posix_logger.h:28:
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:75:25: error: no type named 'function' in namespace 'std'
std::function<void(void*)> callback);
~~~~~^
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:75:33: error: expected ')'
std::function<void(void*)> callback);
^
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:74:19: note: to match this '('
void SetCallBack(const std::string point,
^
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:102:40: error: no member named 'function' in namespace 'std'
std::unordered_map<std::string, std::function<void(void*)> > callbacks_;
~~~~~^
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:102:58: error: expected '(' for function-style cast or type construction
std::unordered_map<std::string, std::function<void(void*)> > callbacks_;
~~~~^
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:102:59: error: expected expression
std::unordered_map<std::string, std::function<void(void*)> > callbacks_;
^
/home/peter/builds/arangodb/src/arangodb-3.1.23/3rdParty/rocksdb/rocksdb/util/sync_point.h:102:62: error: expected member name or ';' after declaration specifiers
std::unordered_map<std::string, std::function<void(void*)> > callbacks_;
^
[ 4%] Built target snappystatic

and the build dies a bit later

CXX(target) /home/peter/builds/arangodb/src/arangodb-3.1.23/build/3rdParty/V8/v8/x64.release/obj.target/v8_external_snapshot/src/snapshot/natives-external.o
CXX(target) /home/peter/builds/arangodb/src/arangodb-3.1.23/build/3rdParty/V8/v8/x64.release/obj.target/v8_external_snapshot/src/snapshot/snapshot-external.o
AR(target) /home/peter/builds/arangodb/src/arangodb-3.1.23/build/3rdParty/V8/v8/x64.release/obj.target/tools/gyp/libv8_external_snapshot.a
TOUCH /home/peter/builds/arangodb/src/arangodb-3.1.23/build/3rdParty/V8/v8/x64.release/obj.target/tools/gyp/v8_maybe_snapshot.stamp
TOUCH /home/peter/builds/arangodb/src/arangodb-3.1.23/build/3rdParty/V8/v8/x64.release/obj.target/tools/gyp/v8.stamp
[ 31%] No install step for 'v8_build'
[ 31%] Completed 'v8_build'
[ 31%] Built target v8_build
make: *** [Makefile:152: all] Fehler 2


Using GCC 7.1.1 yields:
In file included from ../../../../3rdParty/V8/V8-5.0.71.39/./src/heap/objects-visiting.h:12:0,
from ../../../../3rdParty/V8/V8-5.0.71.39/src/heap/objects-visiting.cc:5:
../../../../3rdParty/V8/V8-5.0.71.39/./src/objects-body-descriptors.h: In static member function ‘static void v8::internal::FixedBodyDescriptor<start_offset, end_offset, size>::IterateBody(v8::internal::HeapObject*, int)’:
../../../../3rdParty/V8/V8-5.0.71.39/./src/objects-body-descriptors.h:102:20: error: no matching function for call to ‘v8::internal::FixedBodyDescriptor<start_offset, end_offset, size>::IterateBody(v8::internal::HeapObject*&)’
IterateBody(obj);

cvnb commented on 2017-06-27 19:10

@NicoHood: I'm not sure about the security implications you allude to in your comment. I'll appreciate if you can explain. On the export, I adapted directives from Clang wiki[1]. As far as reason for using clang in place of gcc, refer to pschyma's comment: the bundled v8 version cannot be compiled with gcc 7.1.1. Instead of downgrading to lower gcc 6.3.1, I checked if clang could compile it without errors since this is an alternate compiler to gcc[2]. It did and turned out to be path of least resistance.

[1] https://wiki.archlinux.org/index.php/clang
[2] https://docs.arangodb.com/3.1/Manual/GettingStarted/Installing/Compiling.html

NicoHood commented on 2017-06-27 13:30

I am not sure but by using the export like this you overwrite security features provided by default makepkg CC flags. I might be wrong. You should ask in the mailinglist before applying this chang. Also why would you want to use clang instead of gcc? Is there any specific reason?

cvnb commented on 2017-06-27 05:44

Thank you pschyma for the helpful comment! I changed compiler to clang/clang++ and I was able to compile as well.

https://gist.github.com/cvnb/ea628c5f942c1b538448d44072f47e2e

Changes:
1. Version bumped to 3.1.23
2. Added clang to makedepends
3. Updated sha512sums array for new package 3.1.23
4. Added CC and CXX exports for clang

pschyma commented on 2017-06-25 08:30

Seems to be related to the v8 version used that cannot be compiled using the latest gcc. After downgrading to gcc 6.3.1 from 7.1.1 the build compiles again.

sleepycat commented on 2017-06-22 17:09

The build failures are being investigated. I'll get them sorted out soon, and get this back up to date.

a216 commented on 2017-06-10 05:12

Build sure is failing, an error after:
...
[93%] Built target arangoserver
make: *** [Makefile:152: all] Error 2
==> ERROR: A failure occurred in build()

guerch commented on 2017-06-06 22:16

build is failing

gregorybleiker commented on 2017-06-04 08:35

Is anyone working on a binary package for this? It takes like forever to compile this thing on my laptop... Would be willing to put some work into this.

Kuchiriel commented on 2017-05-16 22:59

Someone can make an OpenRC conf out of this and put here in AUR?

devIking1983 commented on 2017-04-27 05:49

Hi, when I try download latest version aur package, gpg return error unknow public key EA93F5E56E751E9B.

sleepycat commented on 2017-04-05 15:14

@THijxx: I've updated the package and I think your issue should be resolved. Let me know if you are still having permissions problems. Thanks for letting me know!

Thijxx commented on 2017-04-04 07:48

It looks like the installation fails on user creation or assigning rights, the lock and log locations are not write-able, therefore the service cannot be started.

sleepycat commented on 2017-03-27 20:38

I've updated the package to 3.1.15.
Pull Frank Celler's key before installing (he's the CTO of ArangoDB):
`gpg --recv-keys CD8CB0F1E0AD5B52E93F41E7EA93F5E56E751E9B`

ArangoDB now works with logrotate!

sleepycat commented on 2017-03-27 20:32

@guerch Try this: gpg --recv-keys CD8CB0F1E0AD5B52E93F41E7EA93F5E56E751E9B
As a general rule you should prefer long ids over short ones.

guerch commented on 2017-03-25 22:35

trying to upgrade i get ... FAILED (unknown public key EA93F5E56E751E9B) already try to gpg --recv-keys EA93F5E56E751E9B but that does not work, any tips?

NicoHood commented on 2017-03-21 15:35

There are still remove commands in the uninstall section. Dont use this. No matter if its logs or the binaries (/usr/share) themselves. This should be done by pacman anyways.

https://aur.archlinux.org/cgit/aur.git/commit/?h=arangodb&id=b18ddb01ec4085906114e00cd38eef75899b1133

The provides and conflicts are also not required at all and wrong. -git conflicts against the base package. provides is just useless.

sleepycat commented on 2017-03-20 17:35

@NicoHood: Awesome. Appreciated!
I'll work those.

NicoHood commented on 2017-03-20 17:08

My notes:

The sysuser creation can be replaced by a pacman hook. Have a look at rethinkdb.
The whole install process should be replaced by make install.
The service file of arangodb should be used. systemd should be a dependency, then it should be pulled in automatically
arangodb has an aweful service file, they should fix it upstream. no chmod in service files!
Please use the provided gpg signatures and sha512sums
Dont remove files in the uninstall. rather add a note about the leftover files.
I am also not sure if a db stop is "the arch way"

Reference:
https://git.archlinux.org/svntogit/community.git/tree/trunk/rethinkdb.install?h=packages/rethinkdb

https://gist.github.com/NicoHood/db163576c600205987ca87144bd493f0

sleepycat commented on 2017-03-20 16:56

It looked for little while that this package was left for dead, but I finally got some time give this package some much needed love. The package has been updated to 3.1.14.

The cmake files @lxndr pointed out have been cleaned up.
Following @NicoHood's advice, creation of users is now handled by sysusers.d
A bunch of other improvements have been made as well and more on the way.
If you are interested dig into the source.

Thank you all for the critique. Keep it coming.
As always, comments, suggestions, issues and pull requests welcome: https://github.com/sleepycat/arangodb_arch

NicoHood commented on 2017-03-02 18:45

If somebody wants to help improving and updating this package, please contribute here:
https://github.com/arangodb/arangodb/issues/2343

NicoHood commented on 2017-02-14 21:24

The post_remove() user deleting is not allowed for archlinux. Also /var should not be cleared but a note should be printed instead to remove those.

haawda commented on 2017-01-29 23:23

The file
$pkgdir/arangodb/usr/share/arangodb3/js/common/test-data/modules/commonjs/bootstrap.py
is a python2-script with wrong shebang, and nodejs maybe needed - at least optionally.

caelia commented on 2016-11-30 08:54

@gregorybleiker - Yes, I noticed that. I attempted to build the package on 2 different machines about a day apart; the first time the checksum was fine, the second time it failed. I think the file must have changed (bad upstream developers, baaaad!).

I note that v3.1.2 is out, so if you're inclined to skip the checksum, you might as well bump the version # while you're at it.

caelia commented on 2016-11-30 08:51

I'm getting the following error - no idea what it means. I do seem to recall seeing a very similar error a couple of years ago when I first tried to build ArangoDB, but I can't recall what the solution was. It may be that I just waited and the problem went away in a later version (oh, speaking of versions, I did bump the version to 3.1.2 in the PKGBUILD, but I had the same error with 3.1.1).

ACTION tools_gyp_v8_gyp_v8_external_snapshot_target_run_mksnapshot__ignition_ /var/abs/local/arangodb/src/ArangoDB-3.1.2/build/3rdParty/V8/v8/x64.release/snapshot_blob_ignition.bin
CXX(target) /var/abs/local/arangodb/src/ArangoDB-3.1.2/build/3rdParty/V8/v8/x64.release/obj.target/v8_external_snapshot/src/snapshot/natives-external.o
CXX(target) /var/abs/local/arangodb/src/ArangoDB-3.1.2/build/3rdParty/V8/v8/x64.release/obj.target/v8_external_snapshot/src/snapshot/snapshot-external.o
AR(target) /var/abs/local/arangodb/src/ArangoDB-3.1.2/build/3rdParty/V8/v8/x64.release/obj.target/tools/gyp/libv8_external_snapshot.a
TOUCH /var/abs/local/arangodb/src/ArangoDB-3.1.2/build/3rdParty/V8/v8/x64.release/obj.target/tools/gyp/v8_maybe_snapshot.stamp
TOUCH /var/abs/local/arangodb/src/ArangoDB-3.1.2/build/3rdParty/V8/v8/x64.release/obj.target/tools/gyp/v8.stamp
[ 47%] No install step for 'v8_build'
[ 47%] Completed 'v8_build'
[ 47%] Built target v8_build
make: *** [Makefile:150: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...

gregorybleiker commented on 2016-11-27 09:49

I'm getting a sha256sum error...
'''
==> Validating source files with sha256sums...
ArangoDB-3.1.1.tar.bz2 ... FAILED
'''

lxndr commented on 2016-10-11 09:47

A lot of useless (c)make files in /usr/lib.

sleepycat commented on 2016-08-29 13:15

@mtdk: It looks like that was a passing issue with their site. It's available again:
curl --head https://www.arangodb.com/repositories/Source/ArangoDB-3.0.5.tar.bz2
HTTP/1.1 200 OK

Let me know if you have further problems.

mtdk commented on 2016-08-29 06:41

https://www.arangodb.com/repositories/Source/ArangoDB-3.0.5.tar.bz2 returns "403 forbidden" as of today, so the package will not build.

sleepycat commented on 2016-08-23 16:05

The package is now updated to 3.0.5 and the path issues @carpincho pointed out should be all resolved. After install it should Just Work™.

As always, comments, issues and pull requests welcome: https://github.com/sleepycat/arangodb_arch

sleepycat commented on 2016-08-09 17:36

@carpincho: I'll look into that. Thanks for pointing it out!

carpincho commented on 2016-08-05 13:26

Hi, I am pretty newbie so it may be just my install, but there seem to be a confusion in the path names in the config files. I had to modify /var/lib/arangodb.conf and correct the paths from /usr/var/* to /var/* and change all arangodb3 path to arangodb. Same thing with arangodb.service . Beside that, good job for the package.

sleepycat commented on 2016-07-19 16:01

I've updated the package to the new cmake build system and ArangoDB 3.0.3.
I have a copy of the repo on github: https://github.com/sleepycat/arangodb_arch
If you see anything than can be improved leave a comment here or on github. Pull requests obviously welcome.

illuser commented on 2016-06-25 15:25

Arangodb is now on version 3. Version 3 has changed the build system to cmake.

mrkvon commented on 2016-06-06 02:20

In v2.8.7 (with gcc v6.1.1) the database fails with Segmentation fault after opening web interface (http://127.0.0.1:8529).

details (and fix) here: https://github.com/arangodb/arangodb/issues/1841

Marqin commented on 2016-03-20 18:58

That SSLv3 error is fixed in 2.8.5

asaaki commented on 2016-03-08 00:05

It seems they have disabled SSLv3 method recently in the package:
https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/openssl&id=4b82ed4285c7cb76caf6d75a015c5a7542c625d1

But arangodb seems to expect it.

asaaki commented on 2016-03-07 23:53

@markasoftware:
Can confirm, seems to happen after update of openssl package to most recent version.

Have seen your GitHub issue and will follow it.

Ref: https://github.com/arangodb/arangodb/issues/1773

markasoftware commented on 2016-03-07 17:28

I get the folowing error when trying to build:

lib/Basics/ssl-helper.cpp:59:14: error: use of undeclared identifier 'SSLv3_method'; did you mean 'SSLv23_method'?
meth = SSLv3_method();
^~~~~~~~~~~~
SSLv23_method
/usr/include/openssl/ssl.h:2360:19: note: 'SSLv23_method' declared here
const SSL_METHOD *SSLv23_method(void); /* Negotiate highest available SSL/TLS
^

What should I do?

asaaki commented on 2015-10-24 18:01

@Dietr1ch: I've added the steps to arangodb.install file.

Dietr1ch commented on 2015-09-22 21:22

/var/run/arangodb/ directory is not being created.

Systemd can do this after each boot as described here: https://sessellift.wordpress.com/2015/07/09/how-to-install-arangodb-on-arch-linux-or-manjaro-linux/

which says basically that we should do this:
sudo echo "d /var/run/arangodb 0755 arangodb arangodb -" > /lib/tmpfiles.d/arangodb.conf
sudo systemd-tmpfiles --create arangodb.conf


and now arango will be able to start each boot. The systemd service works fine, so it will take 2 lines to get up and running:

favourite-aur-manager arangodb
systemctl start arangodb

(=

colomar commented on 2015-07-07 00:12

he latest ArangoDB release is 2.6.2.
Also, the build fails with the following error:

LINK(target) /tmp/yaourt-tmp-colomar/aur-arangodb/src/ArangoDB-2.6.0/3rdParty/V8-3.31.74.1/out/x64.release/d8
collect2: error: ld returned 1 exit status
src/d8.target.x64.release.mk:226: recipe for target '/tmp/yaourt-tmp-colomar/aur-arangodb/src/ArangoDB-2.6.0/3rdParty/V8-3.31.74.1/out/x64.release/d8' failed
make[2]: *** [/tmp/yaourt-tmp-colomar/aur-arangodb/src/ArangoDB-2.6.0/3rdParty/V8-3.31.74.1/out/x64.release/d8] Error 1
make[2]: Leaving directory '/tmp/yaourt-tmp-colomar/aur-arangodb/src/ArangoDB-2.6.0/3rdParty/V8-3.31.74.1/out'
Makefile:293: recipe for target 'x64.release' failed
make[1]: *** [x64.release] Error 2
make[1]: Leaving directory '/tmp/yaourt-tmp-colomar/aur-arangodb/src/ArangoDB-2.6.0/3rdParty/V8-3.31.74.1'
Makefile:9782: recipe for target '.v8-build-64' failed
make: *** [.v8-build-64] Error 2

This was already reported ( https://github.com/arangodb/arangodb/issues/1339 ) and according to the report already fixed upstream, but apparently not in 2.6.0. Therefore the package needs an update to 2.6.2 in order to work.

I tested with 2.6.2 (no other changes) and it works

asaaki commented on 2015-02-21 19:53

Even with go provided via Arch the needed disk space for a build of ArangoDB from sources is around 3,2 GiB. So, no real improvement here.

asaaki commented on 2015-02-19 17:08

I'll change this build setup soon (using Go package instead of a bundled one).
Should reduce the amount of needed disk space a little bit.

evilgnome commented on 2015-02-19 16:58

My build failure was probably due to running out of space in the build dir. When the failure happened, the space the operation used was 3.7 gigs!

evilgnome commented on 2015-02-18 23:18

This fails to compile for me, x86_64.

...
CXXLD bin/arangoimp
collect2: error: ld returned 1 exit status
Makefile:3363: recipe for target 'bin/arangoimp' failed
make[1]: *** [bin/arangoimp] Error 1
make[1]: Leaving directory '/.../src/ArangoDB-2.4.3'
Makefile:2056: recipe for target 'all' failed
make: *** [all] Error 2

Also, why does it provide a bundled go, rather than depending on community's?

asaaki commented on 2014-11-17 22:54

Version 2.3.0 was released. Could you update the package, please?

ayr0 commented on 2014-06-27 18:30

2.1.2 has been released. Arangodb notifies there is an update everytime I launch it.

bpdp commented on 2013-12-03 20:02

hello,

Updated to 1.4.3, accomodating changes from @neng. thank you. @mgushee looks good now.

neng commented on 2013-12-03 18:21

v1.4.3 was out. I've created a git-based package: arangodb-git. In there, I made some changes that may be useful for this package too.

In arangodb.install, added this:

chown arangodb:arangodb /var/lib/arangodb-apps &> /dev/null

In arangodb.service, added this option to ExecStart:
--gid arangodb

mgushee commented on 2013-11-20 21:51

Also, I found a couple of other issues:

1) In the service file, it says

After=syslog.target network.target

Now, I don't understand systemd well enough to be certain this is an error, but I note that 'syslog.target' doesn't exist on my system, nor does the documentation ('systemd.special' manpage) list it among the built-in targets. On the other hand, there *is* a 'syslog.socket', so maybe that's what you meant?

Also--and here again, I'm too new both to ArangoDB and systemd to be sure--but if syslog.socket is indeed needed in the service file, that suggests you might need to add syslog-ng as a package dependency. Though I deleted the syslog reference from the service file, and it doesn't seem to hurt anything (yes, logging appears to work).

2) I think this is really an upstream issue, but I thought you should be aware of it: when I installed the package and attempted to start the arangodb service, I got the following error (from /var/log/arangodb/arangod.log):

ERROR unable to create base application directory '/usr/share/arangodb/js/apps/databases'

I eventually discovered that the fix for this is to edit /etc/arangodb/arangod.conf as follows:

[javascript]
....
app-path = /usr/share/arangodb/js/apps ==> /var/lib/arangodb/apps

I don't know if that's really right, but at least it is writable by the arangodb user.

The question is, though, why was that path set to /usr/share/.... in the first place? Well, I grepped through the source directory, and I found templates for the config files that contain the variable @PKGDATA_DIR@ --which is ultimately derived from the configure option --datarootdir, which I see you set to /usr/share. But I don't think it's your fault, since ./configure --help says (a) $PREFIX/share is the default, and (b) the specified directory is supposed to be read-only.

I'm going to post to the ArangoDB mailing list about this; anything you want to say?

PS: since ArangoDB 1.4.1 is out, I bumped the version number in PKGBUILD, and the package built without any obvious problems.

mgushee commented on 2013-11-20 18:58

Also, I found a couple of other issues:

1) In the service file, it says

After=syslog.target network.target

Now, I don't understand systemd well enough to be certain this is an error, but I note that 'syslog.target' doesn't exist on my system, nor does the documentation ('syslog.special' manpage) list it among the built-in targets. On the other hand, there *is* a 'syslog.socket', so maybe that's what you meant?

Also--and here again, I'm too new both to ArangoDB and systemd to be sure--but if syslog.socket is indeed needed in the service file, that suggests you might need to add syslog-ng as a package dependency. Though I deleted the syslog reference from the service file, and it doesn't seem to hurt anything (yes, logging appears to work).

2) I think this is really an upstream issue, but I thought you should be aware of it: when I installed the package and attempted to start the arangodb service, I got the following error (from /var/log/arangodb/arangod.log):

ERROR unable to create base application directory '/usr/share/arangodb/js/apps/databases'

I eventually discovered that the fix for this is to edit /etc/arangodb/arangod.conf as follows:

[javascript]
....
app-path = /usr/share/arangodb/js/apps ==> /var/lib/arangodb/apps

I don't know if that's really right, but at least it is writable by the arangodb user.

The question is, though, why was that path set to /usr/share/.... in the first place? Well, I grepped through the source directory, and I found templates for the config files that contain the variable @PKGDATA_DIR@ --which is ultimately derived from the configure option --datarootdir, which I see you set to /usr/share. But I don't think it's your fault, since ./configure --help says (a) $PREFIX/share is the default, and (b) the specified directory is supposed to be read-only.

I'm going to post to the ArangoDB mailing list about this; anything you want to say?

PS: since ArangoDB 1.4.1 is out, I bumped the version number in PKGBUILD, and the package built without any obvious problems.


mgushee commented on 2013-11-20 03:36

[code]testing[/code]

mgushee commented on 2013-11-20 03:35

Hi. I notice that your arangodb.install file has the following line:

useradd -U arangodb --home /var/lib/arangodb &> /dev/null

... which creates a normal user account. A quick trip through the ArangoDB documentation doesn't turn up any recommendations regarding user accounts, and this is certainly contrary to the typical practice for database servers. So, unless you have some specific reason for doing it the way you did, I suggest modifying the script to create a system account, e.g.:

useradd -U -r -m -d /var/lib/arangodb -s /bin/false arangodb &>/dev/null

Thanks!

mazzolino commented on 2013-11-02 12:57

Ah, great. Thanks!

bpdp commented on 2013-11-02 12:48

@mazzolino: I use link from Download at arangodb website. It is now 1.4.0. have a look!

mazzolino commented on 2013-11-01 16:25

The old download URLs seem to be outdated. They should be changed to Github:

https://github.com/triAGENS/ArangoDB/archive/v$pkgver.tar.gz

bpdp commented on 2013-06-04 03:08

Update to 1.3.1-2 to reflect new filesystem package binaries location. All now moved to /usr/bin. systemd arangodb.service has been changed also. Enjoy!

bpdp commented on 2013-05-13 16:45

Updated to 1.3.0. If you can't start arangod using systemd (i.e systemct start arangodb) failed, check whether you need to upgrade the database dir. See arangodb docs to upgrade db.

bpdp commented on 2013-03-28 16:17

@gvialetto: done. updated. thanks.

Anonymous comment on 2013-03-28 13:05

Using the /stable/ directory for file downloading breaks the package at every update.
Could you use the versioned directory instead?

Ex: https://www.arangodb.org/repositories/1.2.2/Source/ArangoDB-1.2.2.tar.bz2 instead of https://www.arangodb.org/repositories/stable/Source/ArangoDB-1.2.2.tar.bz2.


Thanks,
g

Anonymous comment on 2013-03-28 13:04

Using the /stable/ directory for file downloading breaks the package at every update. Could you use the versioned directory instead, like:

https://www.arangodb.org/repositories/1.2.2/Source/ArangoDB-1.2.2.tar.bz2

Instead of:

https://www.arangodb.org/repositories/stable/Source/ArangoDB-1.2.2.tar.bz2


Thanks,
g

bpdp commented on 2013-03-21 07:12

Hello,

I've uploaded the new one release (1.2.1), and yes @gvialetto - I put arango.service under /usr/lib/systemd/system/ now. Thank you.

Anonymous comment on 2013-03-20 19:23

Hello,
could you put the systemd service unit under /usr/lib/systemd/system?
The /etc/systemd/system directory should only be used for local service files, not for those provided by packages.

bpdp commented on 2013-03-09 08:18

Changelogs:
1.2.0-2: add icu as dependency. Thanks cdale.

techmunk commented on 2013-03-09 05:51

I had to install the icu package before the service could start. Should be listed as a dependency?

Mar 09 15:23:39 graph arangod[723]: /usr/sbin/arangod: error while loading shared libraries: libicui18n.so.50: cannot open shared object file: No such file or directory
Mar 09 15:23:39 graph systemd[1]: arangodb.service: control process exited, code=exited status=127
Mar 09 15:23:39 graph systemd[1]: Failed to start ArangoDB.

bpdp commented on 2013-03-02 16:48

Hello,

The new 1.2.0 package now shipped with systemd service script, taken from source distribution.

asaaki commented on 2013-02-23 07:57

Would be nice to include the systemd service script, too.

Here is a template:
https://github.com/triAGENS/ArangoDB/blob/master/etc/systemd/arangodb.service

On my machine I had to modify it. Here is my version:

# arangodb.service
[Unit]
Description=ArangoDB
After=syslog.target network.target

[Service]
Type=simple
PIDFile=/var/run/arangod.pid
ExecStart=/usr/sbin/arangod --configuration /etc/arangodb/arangod.conf --pid-file /var/run/arangod.pid

[Install]
WantedBy=multi-user.target