Your message dated Tue, 26 Jul 2011 06:38:57 -0500
with message-id <[email protected]>
and subject line Re: Bug#635207: r-base-core: --max-vsize argument creates 
limit off by a factor of 8
has caused the Debian Bug report #635207,
regarding r-base-core: --max-vsize argument creates limit off by a factor of 8
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
635207: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=635207
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: r-base-core
Version: 2.13.1-1
Severity: normal
Tags: patch

Hi,

On my system, I need for various reasons to use the --max-vsize argument to have
R impose its own limit on its heap (rather than using ulimits).  However, the
--max-vsize handling is off by a factor of 8, as can be seen by running R with
e.g. --max-vsize=100M and then executing gc() at the R prompt; the limit will be
displayed as 800Mb (where that "b" really does mean bytes -- i.e. I'm confident 
this
isn't intentional; for evidence try allocating a large vector of doubles with
x <- double(10000000) -- which should take up 80MB of heap -- and running gc()
again).

The reason this happens is a bug in the memory initialization, in particular: 
when
vsfac is set, R_VSize is adjusted appropriately but not R_MaxVSize.  I attach a 
patch to fix this, which I have also sent to r-devel at
  <http://permalink.gmane.org/gmane.comp.lang.r.devel/28532>

Please let me know if there's anything else I can do.

Christophe

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.39-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages r-base-core depends on:
ii  libblas3gf [libblas.so. 1.2-8            Basic Linear Algebra Reference imp
ii  libbz2-1.0              1.0.5-6          high-quality block-sorting file co
ii  libc6                   2.13-7           Embedded GNU C Library: Shared lib
ii  libcairo2               1.10.2-6         The Cairo 2D vector graphics libra
ii  libgfortran3            4.6.1-4          Runtime library for GNU Fortran ap
ii  libglib2.0-0            2.28.6-1         The GLib library of C routines
ii  libgomp1                4.6.1-4          GCC OpenMP (GOMP) support library
ii  libice6                 2:1.0.7-2        X11 Inter-Client Exchange library
ii  libjpeg62               6b1-1            The Independent JPEG Group's JPEG 
ii  liblapack3gf [liblapack 3.2.1-8          library of linear algebra routines
ii  liblzma2                5.0.0-2          XZ-format compression library
ii  libpango1.0-0           1.28.4-1         Layout and rendering of internatio
ii  libpaper-utils          1.1.24+nmu1      library for handling paper charact
ii  libpcre3                8.12-3           Perl 5 Compatible Regular Expressi
ii  libpng12-0              1.2.46-1         PNG library - runtime
ii  libquadmath0            4.6.1-4          GCC Quad-Precision Math Library
ii  libreadline6            6.2-2            GNU readline and history libraries
ii  libsm6                  2:1.2.0-2        X11 Session Management library
ii  libtiff4                3.9.5-1          Tag Image File Format (TIFF) libra
ii  libx11-6                2:1.4.3-2        X11 client-side library
ii  libxext6                2:1.3.0-3        X11 miscellaneous extension librar
ii  libxss1                 1:1.2.1-1        X11 Screen Saver extension library
ii  libxt6                  1:1.1.1-2        X11 toolkit intrinsics library
ii  tcl8.5                  8.5.10-1         Tcl (the Tool Command Language) v8
ii  tk8.5                   8.5.10-1         Tk toolkit for Tcl and X11, v8.5 -
ii  ucf                     3.0025+nmu2      Update Configuration File: preserv
ii  unzip                   6.0-5            De-archiver for .zip files
ii  xdg-utils               1.1.0~rc1-2      desktop integration utilities from
ii  zip                     3.0-4            Archiver for .zip files
ii  zlib1g                  1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages r-base-core recommends:
ii  r-base-dev                    2.13.1-1   GNU R installation of auxiliary GN
ii  r-doc-html                    2.13.1-1   GNU R html manuals for statistical
ii  r-recommended                 2.13.1-1   GNU R collection of recommended pa

Versions of packages r-base-core suggests:
ii  ess                           5.13-1     Emacs mode for statistical program
ii  r-base-html                   2.13.1-1   GNU R html docs for statistical co
pn  r-doc-info | r-doc-pdf        <none>     (no description available)
pn  r-mathlib                     <none>     (no description available)

-- no debconf information
>From 933ab0cfca4657eba217edc99094fd509223e657 Mon Sep 17 00:00:00 2001
From: Christophe Rhodes <[email protected]>
Date: Thu, 21 Jul 2011 14:40:34 +0100
Subject: [PATCH] src/main/memory.c: set R_MaxVSize when assigning to vsfac

Fixes --max-vsize command-line option (previously generated a
limit too great by a factor of 8 on my machines)
---
 src/main/memory.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/main/memory.c b/src/main/memory.c
index f514ffd..46b5d44 100644
--- a/src/main/memory.c
+++ b/src/main/memory.c
@@ -1877,7 +1877,7 @@ void attribute_hidden InitMemory()
 #endif
     vsfac = sizeof(VECREC);
     R_VSize = (((R_VSize + 1)/ vsfac));
-
+    R_SetMaxVSize(R_MaxVSize);
     UNMARK_NODE(&UnmarkedNodeTemplate);
 
     for (i = 0; i < NUM_NODE_CLASSES; i++) {
-- 
1.7.5.4


--- End Message ---
--- Begin Message ---
On 24 July 2011 at 12:45, Christophe Rhodes wrote:
| Dirk Eddelbuettel <[email protected]> writes:
| 
| > I saw your post on r-devel. It really belongs there.  We add nothing by
| > discussing / hiding this in the Debian BTS.
| 
| I don't plan to tell you how to manage your package maintenance: do as
| you wish.  However, I think we add things by having this in the BTS:
| speaking as a Debian user, I like Debian the organization to be aware of
| bugs in its distributed packages that affect me, whether or not those
| bugs are upstream bugs or packaging bugs -- I don't see what is gained
| by closing this bug report, as the problem I have encountered still
| exists.  (As far as I'm concerned, the BTS is a way of managing
| continuity of maintenance -- if for whatever reason you disappeared
| tomorrow, your successor would know about this problem too)
| 
| > | Please let me know if there's anything else I can do.
| >
| > No, we need to engage R Core to pick it up there. I do not like our R engine
| > to differ from what you'd get elsewhere so I am *not* in favour of patches
| > changing behaviour.  Let;s change this upstream, and close it here.
| 
| I would be happy to see "R Core" pick this up, of course.  How can we
| arrange that?

Seems to be fixed "upstream" now per
http://developer.r-project.org/blosxom.cgi/R-devel/2011/07/26#n2011-07-26 

   2.13.1 patched BUG FIXES

   The very-rarely-used command-line option ‘--max-vsize’ was incorrectly
   interpreted as a number of Vcells and not in bytes as documented. (Spotted
   by Christophe Rhodes.) 

I'll close it now for convenience. If you must, reopen and I'll close with
the actual upload.

Dirk

| 
| Best,
| 
| Christophe

-- 
Gauss once played himself in a zero-sum game and won $50.
                      -- #11 at http://www.gaussfacts.com


--- End Message ---

Reply via email to