You are not logged in.

#1 2015-04-07 19:34:07

jmccay
Member
Registered: 2014-11-19
Posts: 5

MongoDB 3.0.1-1 32bit

I am trying to get MongoDB running on my 32 system.  It is a P4 with 1.5 Gigs memory, and a now a fresh install of Arch Linux.  When I try to run MongoDB at all I get:

Program received signal SIGILL, Illegal instruction.

I ran it using gbd and got the following:

(gdb) r
Starting program: /usr/bin/mongo 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".

Program received signal SIGILL, Illegal instruction.
0x0845e518 in tcmalloc::Sampler::Init(unsigned int) ()
(gdb) 

(gdb) bt
#0  0x0845e518 in tcmalloc::Sampler::Init(unsigned int) ()
#1  0x00000000 in ?? ()
(gdb) Quit

     I should also note, that it does not start with systemctl either.  There is no files in /var/lib/mongodb and /var/log/mongodb because it has not successfully run yet in this installation.

     I had mongoDB running before my old install upgraded to 3.0.1-1, and it stopped running when I updated.  For a few reasons, I decided to do a complete reinstall of my system (mainly because the previous install was my first and I made mistakes when I did installed it).  I have search everywhere and I can't find any solutions.  Any help would be appreciated.  Thank you.

jmccay

Last edited by jmccay (2015-04-07 19:38:36)

Offline

#2 2015-04-07 19:54:22

nullified
Member
From: Massachusetts, USA
Registered: 2013-12-09
Posts: 468

Re: MongoDB 3.0.1-1 32bit

What errors are you getting when you try to start the MongoDB service? Start it how you would any other service:

sudo systemctl start mongodb.service

If it fails to start, post the output you get as well as the output from

systemctl status mongodb.service

"We may say most aptly, that the Analytical Engine weaves algebraical patterns just as the Jacquard-loom weaves flowers and leaves." - Ada Lovelace

Offline

#3 2015-04-07 20:18:20

jmccay
Member
Registered: 2014-11-19
Posts: 5

Re: MongoDB 3.0.1-1 32bit

I get the same result:

Apr 07 16:05:07 caledonia systemd[1]: mongodb.service: main process exited, code=dumped, status=4/ILL
Apr 07 16:05:07 caledonia systemd[1]: Unit mongodb.service entered failed state.
Apr 07 16:05:07 caledonia systemd[1]: mongodb.service failed.
Apr 07 16:05:07 caledonia systemd-coredump[611]: Process 603 (mongod) of user 996 dumped core.

How do I view an lz4 coredump to find out more infomation.  I tried gdb, but it said it was not a core dump.

jmccay

Offline

#4 2015-04-08 00:47:58

anatolik
Developer
Registered: 2012-09-27
Posts: 458

Re: MongoDB 3.0.1-1 32bit

Sounds like 32-bit version was compiled with some incompatible instructions (e.g. SSE2). Either Arch compile flags are incorrect or upstream build system does not respect CFLAGS.

Please disassemble mongo binaries (read https://sourceware.org/gdb/onlinedocs/g … -Code.html for more info) and show us instructions around 0x0845e518 address.


Read it before posting http://www.catb.org/esr/faqs/smart-questions.html
Ruby gems repository done right https://bbs.archlinux.org/viewtopic.php?id=182729
Fast initramfs generator with security in mind https://wiki.archlinux.org/index.php/Booster

Offline

#5 2015-04-08 14:55:38

jmccay
Member
Registered: 2014-11-19
Posts: 5

Re: MongoDB 3.0.1-1 32bit

This is what I get:

   0x0845e500 <_ZN8tcmalloc7Sampler4InitEj+912>:	pop    %ecx
   0x0845e501 <_ZN8tcmalloc7Sampler4InitEj+913>:	xchg   %eax,%edx
   0x0845e502 <_ZN8tcmalloc7Sampler4InitEj+914>:	in     $0x91,%al
   0x0845e504 <_ZN8tcmalloc7Sampler4InitEj+916>:	loope  0x845e505 <_ZN8tcmalloc7Sampler4InitEj+917>
   0x0845e506 <_ZN8tcmalloc7Sampler4InitEj+918>:	mulsd  %xmm1,%xmm2
   0x0845e50a <_ZN8tcmalloc7Sampler4InitEj+922>:	addsd  %xmm0,%xmm2
   0x0845e50e <_ZN8tcmalloc7Sampler4InitEj+926>:	movsd  %xmm2,0x10(%esp)
   0x0845e514 <_ZN8tcmalloc7Sampler4InitEj+932>:	fldl   0x10(%esp)
=> 0x0845e518 <_ZN8tcmalloc7Sampler4InitEj+936>:	fisttpll 0x8(%esp)
   0x0845e51c <_ZN8tcmalloc7Sampler4InitEj+940>:	mov    0x8(%esp),%eax
   0x0845e520 <_ZN8tcmalloc7Sampler4InitEj+944>:	mov    %eax,(%esi)
   0x0845e522 <_ZN8tcmalloc7Sampler4InitEj+946>:	add    $0x2c,%esp
   0x0845e525 <_ZN8tcmalloc7Sampler4InitEj+949>:	pop    %esi
   0x0845e526 <_ZN8tcmalloc7Sampler4InitEj+950>:	pop    %edi
   0x0845e527 <_ZN8tcmalloc7Sampler4InitEj+951>:	pop    %ebx
   0x0845e528 <_ZN8tcmalloc7Sampler4InitEj+952>:	pop    %ebp
   0x0845e529 <_ZN8tcmalloc7Sampler4InitEj+953>:	ret    
   0x0845e52a:	nopw   0x0(%eax,%eax,1)
   0x0845e530 <_ZN8tcmalloc7Sampler21PickNextSamplingPointEv+0>:	push   %edi
   0x0845e531 <_ZN8tcmalloc7Sampler21PickNextSamplingPointEv+1>:	push   %esi
   0x0845e532 <_ZN8tcmalloc7Sampler21PickNextSamplingPointEv+2>:	sub    $0x24,%esp
   0x0845e535 <_ZN8tcmalloc7Sampler21PickNextSamplingPointEv+5>:	call   0x845e53a <_ZN8tcmalloc7Sampler21PickNextSamplingPointEv+10>

I don't have the source code, but it appears to be near the end of the in tcmalloc::Sampler::Init(unsigned int) () function call.

jmccay

Offline

#6 2015-04-08 15:52:21

anatolik
Developer
Registered: 2012-09-27
Posts: 458

Re: MongoDB 3.0.1-1 32bit

'fisttp' is a SSE3 instruction and should not be in 32bit binary. Your CPU does not support SSE3 and thus the application crashes.

Please file an Arch and/or upstream bug for further investigation.


Read it before posting http://www.catb.org/esr/faqs/smart-questions.html
Ruby gems repository done right https://bbs.archlinux.org/viewtopic.php?id=182729
Fast initramfs generator with security in mind https://wiki.archlinux.org/index.php/Booster

Offline

#7 2015-04-11 00:35:40

jmccay
Member
Registered: 2014-11-19
Posts: 5

Re: MongoDB 3.0.1-1 32bit

I waited and there is a new version.  When I uninstall and then reinstall mongodb I notice that for some reason it is not compiling mongodb.  I looked at PKGBUILD file and it should be downloading the source and compiling it.  I tried to clean up the cache after uninstalling with:

sudo pacman -Rns mongodb
sudo pacman -Scc

to see it that works, but it doesn't.  Is there a way to force it to compile?  This might be the source of my problems.  When I install, I tried 2 things:

packer --noedit -S mongodb

&

pacman -Syv mongodb

Neither option compiles.  Thank you.
jmccay.

Last edited by jmccay (2015-04-11 00:37:18)

Offline

#8 2015-04-11 14:14:51

anatolik
Developer
Registered: 2012-09-27
Posts: 458

Re: MongoDB 3.0.1-1 32bit

pacman downloads and installs *binary* package. You probably had out-of-date mirror. By now all alive mirrors should have new mongo available. Try to update your system.

If you want to build the package from sources you need to learn more about ABS and makepkg https://wiki.archlinux.org/index.php/Arch_Build_System


Read it before posting http://www.catb.org/esr/faqs/smart-questions.html
Ruby gems repository done right https://bbs.archlinux.org/viewtopic.php?id=182729
Fast initramfs generator with security in mind https://wiki.archlinux.org/index.php/Booster

Offline

#9 2015-08-20 11:56:35

ahonom
Member
Registered: 2015-08-20
Posts: 1

Re: MongoDB 3.0.1-1 32bit

I wrote a detailed blog post about it (https://ubuntuincident.wordpress.com/20 … -manually/). The problem is that the binaries in the official repo are compiled using an instruction set that is not supported by old 32-bit CPUs. Solution: compile it from source and install manually.

Offline

Board footer

Powered by FluxBB