After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 723102 - Compiling rygel, valadoc requires 16 exbibytes of memory
Compiling rygel, valadoc requires 16 exbibytes of memory
Status: RESOLVED DUPLICATE of bug 723195
Product: rygel
Classification: Applications
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: rygel-maint
rygel-maint
Depends on: 723195
Blocks:
 
 
Reported: 2014-01-27 14:31 UTC by Michael Catanzaro
Modified: 2014-01-29 09:43 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Michael Catanzaro 2014-01-27 14:31:18 UTC
This looks like a valadoc bug, but I'll file against rygel first.  A 'jhbuild build' yesterday failed spectacularly when compiling rygel. The error is:

(valadoc:26172): GLib-ERROR **: gmem.c:108: failed to allocate 18446744073709551613 bytes
/bin/sh: line 6: 26172 Trace/breakpoint trap   (core dumped)

(My computer does not have that much memory. :) Output leading up to the error:

make[4]: Entering directory `/home/mcatanzaro/jhbuild/src/rygel/doc/reference/librygel-core'
  GEN      valadoc-gen
  GEN      gtkdoc-gen
Missing long description in the documentation for ‘Rygel.ConnectionManager’ which forms gtk-doc section ‘RygelConnectionManager’.
Missing long description in the documentation for ‘Rygel.BasicManagement’ which forms gtk-doc section ‘RygelBasicManagement’.
Missing long description in the documentation for ‘Rygel.DescriptionFile’ which forms gtk-doc section ‘RygelDescriptionFile’.
Missing long description in the documentation for ‘Rygel.ResourceInfo’ which forms gtk-doc section ‘RygelResourceInfo’.
Missing long description in the documentation for ‘Rygel.V1Hacks’ which forms gtk-doc section ‘RygelV1Hacks’.
Missing long description in the documentation for ‘Rygel.IconInfo’ which forms gtk-doc section ‘RygelIconInfo’.
Missing long description in the documentation for ‘Rygel.XMLUtils’ which forms gtk-doc section ‘RygelXMLUtils’.
Missing long description in the documentation for ‘Rygel.Configuration’ which forms gtk-doc section ‘RygelConfiguration’.
Missing long description in the documentation for ‘Rygel.StateMachine’ which forms gtk-doc section ‘RygelStateMachine’.

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26172): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

(valadoc:26172): GLib-ERROR **: gmem.c:108: failed to allocate 18446744073709551613 bytes
/bin/sh: line 6: 26172 Trace/breakpoint trap   (core dumped) /home/mcatanzaro/jhbuild/install/bin/valadoc -X ../../../src/librygel-core/rygel-core.h -X -l -X ../../../src/librygel-core/.libs/librygel-core-2.2.so -o gtkdoc --doclet gtkdoc --force --vapidir ../../../src/librygel-core --pkg gupnp-1.0 --pkg gee-0.8 --pkg gssdp-1.0 --pkg gio-2.0 --pkg gmodule-2.0 --pkg posix --vapidir=../../../src/librygel-core --pkg rygel-build-config --pkg uuid --target-glib=2.32 --vapidir= --pkg rygel-build-config -b ../../../src/librygel-core --package-name librygel-core --package-version 2.2 ../../../src/librygel-core/rygel-connection-manager.vala ../../../src/librygel-core/rygel-basic-management.vala ../../../src/librygel-core/rygel-basic-management-test.vala ../../../src/librygel-core/rygel-basic-management-test-ping.vala ../../../src/librygel-core/rygel-basic-management-test-nslookup.vala ../../../src/librygel-core/rygel-basic-management-test-traceroute.vala ../../../src/librygel-core/rygel-description-file.vala ../../../src/librygel-core/rygel-root-device.vala ../../../src/librygel-core/rygel-root-device-factory.vala ../../../src/librygel-core/rygel-dbus-interface.vala ../../../src/librygel-core/rygel-log-handler.vala ../../../src/librygel-core/rygel-meta-config.vala ../../../src/librygel-core/rygel-plugin-loader.vala ../../../src/librygel-core/rygel-recursive-module-loader.vala ../../../src/librygel-core/rygel-plugin.vala ../../../src/librygel-core/rygel-resource-info.vala ../../../src/librygel-core/rygel-media-device.vala ../../../src/librygel-core/rygel-configuration.vala ../../../src/librygel-core/rygel-base-configuration.vala ../../../src/librygel-core/rygel-free-desktop-interfaces.vala ../../../src/librygel-core/rygel-state-machine.vala ../../../src/librygel-core/rygel-v1-hacks.vala ../../../src/librygel-core/rygel-icon-info.vala ../../../src/librygel-core/rygel-xml-utils.vala ../../../src/librygel-core/rygel-plugin-information.vala
make[4]: *** [gtkdoc-gen] Error 133
make[4]: *** Waiting for unfinished jobs....
Succeeded - 0 warning(s)
Comment 1 Jussi Kukkonen 2014-01-28 20:46:54 UTC
I'm seeing the same basic problem. I also get (in the valadoc generation phase) lots of this:

> Error: Layout type: "dot" not recognized. Use one of:
> Layout was not done
> Layout was not done
> 
> ** (valadoc:26585): CRITICAL **: valadoc_markup_writer_raw_text: assertion 'text != NULL' failed


Then in the gtkdoc generation it tries to allocate all the memory and then some. Here's a backtrace of that:

(gdb) r -X ../../../src/librygel-core/rygel-core.h  -X -l -X ../../../src/librygel-core/.libs/librygel-core-2.2.so -o gtkdoc --doclet gtkdoc --force --vapidir ../../../src/librygel-core --pkg gupnp-1.0 --pkg gee-0.8 --pkg gssdp-1.0 --pkg gio-2.0 --pkg gmodule-2.0 --pkg posix --vapidir=../../../src/librygel-core --pkg rygel-build-config --pkg uuid --target-glib=2.32 --vapidir= --pkg rygel-build-config -b ../../../src/librygel-core --package-name librygel-core --package-version 2.2 ../../../src/librygel-core/rygel-connection-manager.vala ../../../src/librygel-core/rygel-basic-management.vala ../../../src/librygel-core/rygel-basic-management-test.vala ../../../src/librygel-core/rygel-basic-management-test-ping.vala ../../../src/librygel-core/rygel-basic-management-test-nslookup.vala ../../../src/librygel-core/rygel-basic-management-test-traceroute.vala ../../../src/librygel-core/rygel-description-file.vala ../../../src/librygel-core/rygel-root-device.vala ../../../src/librygel-core/rygel-root-device-factory.vala ../../../src/librygel-core/rygel-dbus-interface.vala ../../../src/librygel-core/rygel-log-handler.vala ../../../src/librygel-core/rygel-meta-config.vala ../../../src/librygel-core/rygel-plugin-loader.vala ../../../src/librygel-core/rygel-recursive-module-loader.vala ../../../src/librygel-core/rygel-plugin.vala ../../../src/librygel-core/rygel-resource-info.vala ../../../src/librygel-core/rygel-media-device.vala ../../../src/librygel-core/rygel-configuration.vala ../../../src/librygel-core/rygel-base-configuration.vala ../../../src/librygel-core/rygel-free-desktop-interfaces.vala ../../../src/librygel-core/rygel-state-machine.vala ../../../src/librygel-core/rygel-v1-hacks.vala ../../../src/librygel-core/rygel-icon-info.vala ../../../src/librygel-core/rygel-xml-utils.vala ../../../src/librygel-core/rygel-plugin-information.vala
Starting program: /home/jku/src/jhbuild/root/bin/valadoc -X ../../../src/librygel-core/rygel-core.h  -X -l -X ../../../src/librygel-core/.libs/librygel-core-2.2.so -o gtkdoc --doclet gtkdoc --force --vapidir ../../../src/librygel-core --pkg gupnp-1.0 --pkg gee-0.8 --pkg gssdp-1.0 --pkg gio-2.0 --pkg gmodule-2.0 --pkg posix --vapidir=../../../src/librygel-core --pkg rygel-build-config --pkg uuid --target-glib=2.32 --vapidir= --pkg rygel-build-config -b ../../../src/librygel-core --package-name librygel-core --package-version 2.2 ../../../src/librygel-core/rygel-connection-manager.vala ../../../src/librygel-core/rygel-basic-management.vala ../../../src/librygel-core/rygel-basic-management-test.vala ../../../src/librygel-core/rygel-basic-management-test-ping.vala ../../../src/librygel-core/rygel-basic-management-test-nslookup.vala ../../../src/librygel-core/rygel-basic-management-test-traceroute.vala ../../../src/librygel-core/rygel-description-file.vala ../../../src/librygel-core/rygel-root-device.vala ../../../src/librygel-core/rygel-root-device-factory.vala ../../../src/librygel-core/rygel-dbus-interface.vala ../../../src/librygel-core/rygel-log-handler.vala ../../../src/librygel-core/rygel-meta-config.vala ../../../src/librygel-core/rygel-plugin-loader.vala ../../../src/librygel-core/rygel-recursive-module-loader.vala ../../../src/librygel-core/rygel-plugin.vala ../../../src/librygel-core/rygel-resource-info.vala ../../../src/librygel-core/rygel-media-device.vala ../../../src/librygel-core/rygel-configuration.vala ../../../src/librygel-core/rygel-base-configuration.vala ../../../src/librygel-core/rygel-free-desktop-interfaces.vala ../../../src/librygel-core/rygel-state-machine.vala ../../../src/librygel-core/rygel-v1-hacks.vala ../../../src/librygel-core/rygel-icon-info.vala ../../../src/librygel-core/rygel-xml-utils.vala ../../../src/librygel-core/rygel-plugin-information.vala
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Missing long description in the documentation for ‘Rygel.ConnectionManager’ which forms gtk-doc section ‘RygelConnectionManager’.
Missing long description in the documentation for ‘Rygel.BasicManagement’ which forms gtk-doc section ‘RygelBasicManagement’.
Missing long description in the documentation for ‘Rygel.DescriptionFile’ which forms gtk-doc section ‘RygelDescriptionFile’.
Missing long description in the documentation for ‘Rygel.ResourceInfo’ which forms gtk-doc section ‘RygelResourceInfo’.
Missing long description in the documentation for ‘Rygel.V1Hacks’ which forms gtk-doc section ‘RygelV1Hacks’.
Missing long description in the documentation for ‘Rygel.IconInfo’ which forms gtk-doc section ‘RygelIconInfo’.
Missing long description in the documentation for ‘Rygel.XMLUtils’ which forms gtk-doc section ‘RygelXMLUtils’.
Missing long description in the documentation for ‘Rygel.Configuration’ which forms gtk-doc section ‘RygelConfiguration’.
Missing long description in the documentation for ‘Rygel.StateMachine’ which forms gtk-doc section ‘RygelStateMachine’.

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_parameter_construct: assertion 'signature != NULL' failed

** (valadoc:26785): CRITICAL **: gtkdoc_dbus_member_add_parameter: assertion 'parameter != NULL' failed

(valadoc:26785): GLib-ERROR **: gmem.c:108: failed to allocate 18446744073709551613 bytes

Program received signal SIGTRAP, Trace/breakpoint trap.
g_logv (log_domain=0x7ffff6adf2ce "GLib", log_level=G_LOG_LEVEL_ERROR, 
    format=<optimized out>, args=args@entry=0x7fffffffcc18)
    at gmessages.c:1046
1046		  g_private_set (&g_log_depth, GUINT_TO_POINTER (depth));
(gdb) bt
  • #0 g_logv
    at gmessages.c line 1046
  • #1 g_log
    at gmessages.c line 1079
  • #2 g_malloc
    at gmem.c line 107
  • #3 _vala_g_strjoinv
    at /home/jku/src/jhbuild/root/share/vala-0.24/vapi/glib-2.0.vapi line 975
  • #4 gtkdoc_commentize
    at /home/jku/src/jhbuild/sources/valadoc/src/doclets/gtkdoc/utils.vala line 34
  • #5 gtkdoc_gcomment_to_string
    at /home/jku/src/jhbuild/sources/valadoc/src/doclets/gtkdoc/gcomment.vala line 94
  • #6 gtkdoc_generator_execute
    at /home/jku/src/jhbuild/sources/valadoc/src/doclets/gtkdoc/generator.vala line 131
  • #7 gtkdoc_director_real_process
    at /home/jku/src/jhbuild/sources/valadoc/src/doclets/gtkdoc/doclet.vala line 136
  • #8 vala_doc_run
    at /home/jku/src/jhbuild/sources/valadoc/src/valadoc/valadoc.vala line 290
  • #9 vala_doc_main
    at /home/jku/src/jhbuild/sources/valadoc/src/valadoc/valadoc.vala line 377
  • #10 main
    at /home/jku/src/jhbuild/sources/valadoc/src/valadoc/valadoc.vala line 294

Comment 2 Jussi Kukkonen 2014-01-28 21:09:37 UTC
This seems to be a vala string change. This app will allocate 18446744073709551613 bytes with the vala in jhbuild. 

public static int main (string[] args) {
        var s =  string.joinv ("\n * ", "".split ("\n"));
        print ("%s\n", s);

        return ;
}
Comment 3 Jussi Kukkonen 2014-01-28 21:16:26 UTC
It's vala commit 3c0674fa (from bug 686451).
Comment 4 Jussi Kukkonen 2014-01-29 09:43:12 UTC
I'll mark this a duplicate of the vala bug I filed.

The problem is now fixed, but seeing that requires recompilation of the broken app (valadoc in this case).

*** This bug has been marked as a duplicate of bug 723195 ***