[SERVER-7404] Solaris file relocation error: posix_fadvise Created: 18/Oct/12 Updated: 11/Jul/16 Resolved: 20/Jun/13 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | 2.3.2 |
| Fix Version/s: | 2.4.6, 2.5.1 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Tatyana Knaifel | Assignee: | Tad Marshall |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Solaris 10 |
||
| Issue Links: |
|
||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||
| Operating System: | Solaris | ||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Description |
|
Mongod crashes it crashes with error in the log: All the log is the following:
|
| Comments |
| Comment by auto [ 18/Jul/13 ] | ||||||||||||||||||
|
Author: {u'username': u'tadmarshall', u'name': u'Tad Marshall', u'email': u'tad@10gen.com'}Message: For the Solaris/SmartOS build, do not make direct calls to posix_fadvise, | ||||||||||||||||||
| Comment by auto [ 19/Jun/13 ] | ||||||||||||||||||
|
Author: {u'username': u'tadmarshall', u'name': u'Tad Marshall', u'email': u'tad@10gen.com'}Message: Branch: master | ||||||||||||||||||
| Comment by auto [ 19/Jun/13 ] | ||||||||||||||||||
|
Author: {u'username': u'tadmarshall', u'name': u'Tad Marshall', u'email': u'tad@10gen.com'}Message: For the Solaris/SmartOS build, do not make direct calls to posix_fadvise, | ||||||||||||||||||
| Comment by Tad Marshall [ 15/May/13 ] | ||||||||||||||||||
|
Thanks Serge! I'll add that information to | ||||||||||||||||||
| Comment by Serge Fonville [ 15/May/13 ] | ||||||||||||||||||
|
Hi Tad, The system used runs OpenIndiana 151a7
| ||||||||||||||||||
| Comment by Tad Marshall [ 15/May/13 ] | ||||||||||||||||||
|
Thanks for the note above about using a package from OpenCSW to get MongoDB running. Can you tell us which OS and version you used that was fixed with these steps? I filed Thanks! Tad | ||||||||||||||||||
| Comment by Tad Marshall [ 15/May/13 ] | ||||||||||||||||||
|
Hi Dan, Thanks for the update! I haven't tested on OmniOS yet but I will give that attention as well as I test the fix for Thanks for the note that the opencsw build of libstdc++ makes 2.4.3 work on OmniOS. I'll file a documentation ticket to get that information into our online info. Tad | ||||||||||||||||||
| Comment by Dan Kimmel [ 15/May/13 ] | ||||||||||||||||||
|
Hey Tad, this is OmniOS, which shares the kernel (illumos) with SmartOS but uses a different set of userland packages - the sources for the packages are probably very similar but they are built differently. I had used the mongo-extra-64 files from http://downloads.mongodb.org.s3.amazonaws.com/sunos5/. Using the opencsw package instead works like a charm with 2.4.3 - I should have read Serge's post more carefully. Also, thanks for the info on detecting impending page faults! | ||||||||||||||||||
| Comment by Tad Marshall [ 14/May/13 ] | ||||||||||||||||||
|
Hi Dan, Which OS version is this? Solaris 10 or 11 or SmartOS? Did you download the mongo-extra-64.tgz file from http://downloads.mongodb.org.s3.amazonaws.com/sunos5/ or the opencsw version serge.fonville@gmail.com suggested above?
It would be good to get to the bottom of the relocation errors, so knowing the exact OS version where they happen would be helpful, as well as knowing whether the OpenCSW library fixes it in all cases. Thanks! Tad | ||||||||||||||||||
| Comment by Dan Kimmel [ 14/May/13 ] | ||||||||||||||||||
|
I ran into this issue in 2.4.3 as well:
It seems to be an issue for all releases going back to 2.2.0, which is the last 64-bit build that worked for me on illumos with the current mongo-extra-64 tarball. From elsewhere online, it seems like the symbol mismatch is just a matter of compiling mongo-extra-64 with a different compiler version than the program binaries (but I could be wrong). | ||||||||||||||||||
| Comment by Serge Fonville [ 30/Mar/13 ] | ||||||||||||||||||
|
I had the exact same issue with 2.4.1 mongod. what I did:
| ||||||||||||||||||
| Comment by Eric Milkie [ 26/Nov/12 ] | ||||||||||||||||||
|
Inadvertently resolved. | ||||||||||||||||||
| Comment by Eric Milkie [ 15/Nov/12 ] | ||||||||||||||||||
|
Ok so it's possible that your libstdc++ doesn't have the symbol that ours does – ours is 6.0.16 and your is 6.0.14. Since the symbol is internal to the library (we are not calling it directly), you can try building from source, or you can try upgrading to obtain a newer libstdc++. | ||||||||||||||||||
| Comment by Ivan [ 15/Nov/12 ] | ||||||||||||||||||
|
Eric sorry,
| ||||||||||||||||||
| Comment by Eric Milkie [ 15/Nov/12 ] | ||||||||||||||||||
|
Hi Ivan, | ||||||||||||||||||
| Comment by Ivan [ 15/Nov/12 ] | ||||||||||||||||||
|
Hi Eric, I'm using compiled mongodb from http://www.mongodb.org/downloads (Solaris 64-bit):
MongoDB version 2.0.7 download at same url working fine. To resolve this problem need compiling mongo from source? | ||||||||||||||||||
| Comment by Eric Milkie [ 15/Nov/12 ] | ||||||||||||||||||
|
Hi Ivan, Can you check what version of the library you have on your system? You can see with "ldd":
When I look at that file on our build system, it symlinks to libstdc++.so.6.0.16. | ||||||||||||||||||
| Comment by Ivan [ 15/Nov/12 ] | ||||||||||||||||||
|
SunOS HOSTNAME 5.11 11.0 i86pc i386 i86pc: | ||||||||||||||||||
| Comment by Eric Milkie [ 18/Oct/12 ] | ||||||||||||||||||
|
There may be other regressions in Solaris 10 besides this. We currently have no way of testing Oracle Solaris 10. | ||||||||||||||||||
| Comment by Eric Milkie [ 18/Oct/12 ] | ||||||||||||||||||
|
Oracle Solaris 10 doesn't have this symbol, but it does exist on Oracle Solaris 11. It does also exist on SmartOS but is a no-op. Thus, Solaris 11 and SmartOS will not have this issue. |