Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 477300 - dev-db/mongodb-2.4.5 with =dev-lang/v8-3.19.18.9 - src/mongo/scripting/engine_v8.h:20:0: /usr/include/v8.h:750:3: error: 'v8::Persistent<T>::Persistent(const v8::Persistent<T>&) [with T = v8::Context; v8::Persistent<T> = ....]' is private
Summary: dev-db/mongodb-2.4.5 with =dev-lang/v8-3.19.18.9 - src/mongo/scripting/engine...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Ultrabug
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-07-18 13:47 UTC by Alex Brandt (RETIRED)
Modified: 2013-10-21 10:18 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info '=dev-db/mongodb-2.4.5' (file_477300.txt,5.76 KB, text/plain)
2013-07-18 13:49 UTC, Alex Brandt (RETIRED)
Details
emerge -pqv '=dev-db/mongodb-2.4.5' (file_477300.txt,112 bytes, text/plain)
2013-07-18 13:50 UTC, Alex Brandt (RETIRED)
Details
/var/tmp/portage/dev-db/mongodb-2.4.5/temp/build.log (build.log,266.36 KB, text/x-log)
2013-07-18 13:50 UTC, Alex Brandt (RETIRED)
Details
/var/tmp/portage/dev-db/mongodb-2.4.5/temp/environment (environment,107.72 KB, text/plain)
2013-07-18 13:51 UTC, Alex Brandt (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Brandt (RETIRED) gentoo-dev 2013-07-18 13:47:23 UTC
MongoDB gets marked as part of preserved-rebuild upon update of v8 (correctly) but when attempting to rebuild mongodb the build fails with notations indicating that v8 has changed its interface.

The last version of v8 was working successfully for me.  Of course, my last version of v8 is =dev-lang/v8-3.18.5.9 (which is currently stable).

To reproduce:

1. Install =dev-lang/v8-3.19.18.9
2. emerge @preserved-rebuild (specifically =dev-db/mongodb-2.4.5)
3. Build Fails with the following short error message:

/usr/include/v8.h:447:22: error: 'v8::Local<T>::Local(S*) [with S = v8::Function; T = v8::Function]' is private
src/mongo/scripting/v8_utils.cpp:136:87: error: within this context
In file included from src/mongo/scripting/v8_utils.h:24:0,
                 from src/mongo/scripting/v8_utils.cpp:18:
/usr/include/v8.h:770:3: error: 'T* v8::Persistent<T>::operator->() const [with T = v8::Context]' is private
src/mongo/scripting/v8_utils.cpp:150:61: error: within this context
In file included from src/mongo/scripting/v8_utils.h:24:0,
                 from src/mongo/scripting/v8_utils.cpp:18:
/usr/include/v8.h: In function 'mongo::JSThreadConfig* mongo::thisConfig(mongo::V8Scope*, const v8::Arguments&)':
/usr/include/v8.h:447:22: error: 'v8::Local<T>::Local(S*) [with S = v8::External; T = v8::External]' is private
src/mongo/scripting/v8_utils.cpp:197:83: error: within this context
In file included from src/mongo/scripting/v8_db.h:23:0,
                 from src/mongo/scripting/v8_db.cpp:18:

I'll also attach all of the relevant information from the build process itself.
Comment 1 Alex Brandt (RETIRED) gentoo-dev 2013-07-18 13:49:33 UTC
Created attachment 353582 [details]
emerge --info '=dev-db/mongodb-2.4.5'
Comment 2 Alex Brandt (RETIRED) gentoo-dev 2013-07-18 13:50:16 UTC
Created attachment 353584 [details]
emerge -pqv '=dev-db/mongodb-2.4.5'
Comment 3 Alex Brandt (RETIRED) gentoo-dev 2013-07-18 13:50:42 UTC
Created attachment 353586 [details]
/var/tmp/portage/dev-db/mongodb-2.4.5/temp/build.log
Comment 4 Alex Brandt (RETIRED) gentoo-dev 2013-07-18 13:51:03 UTC
Created attachment 353588 [details]
/var/tmp/portage/dev-db/mongodb-2.4.5/temp/environment
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2013-07-18 16:20:35 UTC
src/mongo/scripting/engine_v8.h:20:0:
/usr/include/v8.h:750:3: error: 'v8::Persistent<T>::Persistent(const v8::Persistent<T>&) [with T = v8::Context; v8::Persistent<T> = v8::Persistent<v8::Context>]' is private
Comment 6 Ultrabug gentoo-dev 2013-07-18 16:58:21 UTC
Yep, saw it too, fixed in tree already.

+  18 Jul 2013; Ultrabug <ultrabug@gentoo.org> mongodb-2.4.5.ebuild:
+  block broken v8 versions
+
Comment 7 Chris Smith 2013-07-18 18:09:22 UTC
Not much of a fix:

  (dev-lang/v8-3.19.18.9::gentoo, installed) pulled in by
    >=dev-lang/v8-3.19.17:= required by (www-client/chromium-29.0.1547.22::gentoo, installed)
    =dev-lang/v8-3.19* required by (www-client/chromium-29.0.1547.22::gentoo, installed)
    (and 1 more with the same problems)

  (dev-lang/v8-3.18.5.9::gentoo, ebuild scheduled for merge) pulled in by
    <dev-lang/v8-3.19 required by (dev-db/mongodb-2.4.5::gentoo, installed)
Comment 8 Ultrabug gentoo-dev 2013-07-19 07:56:41 UTC
You're right, this is upstream's resolution we're expecting; fixing status.

Also, please check related bug #471582 about this.
Comment 9 Paweł Hajdan, Jr. (RETIRED) gentoo-dev 2013-10-10 19:33:03 UTC
(In reply to Ultrabug from comment #8)
> You're right, this is upstream's resolution we're expecting; fixing status.
> 
> Also, please check related bug #471582 about this.

The Gentoo Chromium team is now phasing out dev-lang/v8 shared package. I'm working with v8 upstream to get the library in better shape API and ABI-wise, but the ETA is very long ("years"). Please switch the package to use bundled v8.
Comment 10 Ultrabug gentoo-dev 2013-10-21 10:18:24 UTC
+*mongodb-2.4.6-r2 (21 Oct 2013)
+*mongodb-2.2.6-r1 (21 Oct 2013)
+
+  21 Oct 2013; Ultrabug <ultrabug@gentoo.org> +mongodb-2.2.6-r1.ebuild,
+  +mongodb-2.4.6-r2.ebuild:
+  switch to bundled v8 as per chromium team request wrt #477300 #471582, drop
+  2.2.x v8 support as it was not bundled and experimental
+

Ok Chromium team, it's done. I'll drop old ebuilds on the next version bump of mongodb.