Fair enough, though an indication of the length limit in the documentation
at ?IntegerList or a more informative error message would be nice.

Apologies for the noise.
~G


On Sat, Mar 29, 2014 at 2:07 PM, Michael Lawrence <lawrence.michael@gene.com
> wrote:

> Just coerce the RleList to SimpleIntegerList.
>
>
> On Sat, Mar 29, 2014 at 1:10 PM, Gabe Becker <becker.gabe@gene.com> wrote:
>
>> Hi all,
>>
>> Apologies if this gets duplicated. I was not subscribed when I originally
>> sent it.
>>
>> We have a very large RleList, such that the sum of the lengths is larger
>> than INT.MAX, that we want to convert to an also very large
>> IntegerList (whole genome coverages by chromosome I believe, though I'm
>> not
>> the author of the code that ran into this so I could be wrong about the
>> details there).
>>
>> The IntegerList will fit in memory fine, but the coercion method is trying
>> to collapse our RleList into a single Rle (in compress_listData() which is
>> called from coerceToCompressedList() ) during the coercion step, which is
>> too long and causes an integer overflow in the constructor. Specically the
>> Rle_constructor C function is calling _sum_non_neg_ints C function, which
>> throws an error.
>>
>> I can see that there is quite a bit of machinery trying to make these
>> coercions go fast, but it seems they have introduced an  unintended (?)
>> limitation on the size of the *List objects involved. Is there a slower
>> but
>> more robust coercion machinery I don't know about, and if not could one be
>> exposed? (Fast and more robust would also be acceptable ;-) )
>>
>> Thanks,
>> ~G
>>
>>         [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> Bioc-devel@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>>
>
>

	[[alternative HTML version deleted]]

