Hi Chris,<div><br></div><div>thanks for your reply. I was not aware that you were able to give Matthew code that breaks. So hopefully it&#39;s the same issue and Matthew can figure something out. Unfortunately, I&#39;m struggling enough with R already and I&#39;m completely useless when it comes to C...I guess I should put that on my todo-list for 2012 ;-)<br>

<br><div class="gmail_quote">On Mon, Jan 2, 2012 at 3:31 PM, Chris Neff <span dir="ltr">&lt;<a href="mailto:caneff@gmail.com">caneff@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

I worked with Matthew a lot and we found that the code I managed to<br>
give him would not crash on 32-bit, but would on 64-bit (on both 2.12<br>
and 2.14).  It looks like you are running 64-bit as well, so you may<br>
very well be seeing the same issue I am.  I&#39;ll let him respond with<br>
more though :)<br>
<div><div class="h5"><br>
On 2 January 2012 03:40, Christoph Jäckel &lt;<a href="mailto:christoph.jaeckel@wi.tum.de">christoph.jaeckel@wi.tum.de</a>&gt; wrote:<br>
&gt; Note: I posted this on Nabble before, but it keeps telling me that it has<br>
&gt; not been accepted by the mailing list. So this might be a duplicate.<br>
&gt;<br>
&gt; Hi together,<br>
&gt;<br>
&gt; I recently encountered severe problems with R (see my post on stackoverflow<br>
&gt; here: <a href="http://stackoverflow.com/questions/8616862/r-terminates-with-error-message-this-application-has-requested-the-runtime-to-t" target="_blank">http://stackoverflow.com/questions/8616862/r-terminates-with-error-message-this-application-has-requested-the-runtime-to-t</a>).<br>


&gt; Spending the whole day digging further into the problem, I was able to<br>
&gt; produce rather minimal code that crashes my RStudio session. I confirmed<br>
&gt; this on two different machines (see details at the end).  If I run this code<br>
&gt; in my Linux Terminal, I get the following error:<br>
&gt;<br>
&gt;  *** caught segfault ***<br>
&gt; address (nil), cause &#39;unknown&#39;<br>
&gt;<br>
&gt; Traceback:<br>
&gt;  1: as.data.frame.Date(x[[i]], optional = TRUE)<br>
&gt;  2: as.data.frame(x[[i]], optional = TRUE)<br>
&gt;  3: data.frame(ID = rep(1:100, each = n/100), intTime = rep(1:(n/100),<br>
&gt; times = 100), FYE = lDate1 + 1:n)<br>
&gt;<br>
&gt; So it looks like a similar problem  to caneff&#39;s<br>
&gt; problem: <a href="http://r.789695.n4.nabble.com/Random-segfaults-td4195472i20.html" target="_blank">http://r.789695.n4.nabble.com/Random-segfaults-td4195472i20.html</a><br>
&gt;<br>
&gt; So my two questions are:<br>
&gt; 1. Can you confirm this? (Sometimes, I have to run the code a couple of<br>
&gt; times to get R to crash)<br>
&gt; 2. What is the cause? (Interestingly, I need to add the line DT[, reportDate<br>
&gt; := NA] to get the code breaking, although this line seems completely<br>
&gt; irrelevant for the further computations. For me, R closes when the last line<br>
&gt; is run.)<br>
&gt;<br>
&gt; Rather minimal code:<br>
&gt;<br>
&gt; get_diff_month &lt;- function(actualDate, baseDate) {<br>
&gt;<br>
&gt;   #Because data.table also has a month function<br>
&gt;   return(month(actualDate) - month(baseDate) + 12*(year(actualDate) -<br>
&gt; year(baseDate)))<br>
&gt; }<br>
&gt; library(data.table)<br>
&gt;<br>
&gt; n &lt;- 100000<br>
&gt; lDate1 &lt;- as.Date(&quot;1jan1900&quot;, &quot;%d%b%Y&quot;)#dmy(&quot;1Jan1900&quot;)<br>
&gt; lDate2 &lt;- as.Date(&quot;1jan1901&quot;, &quot;%d%b%Y&quot;)#dmy(&quot;1Jan1901&quot;)<br>
&gt; df &lt;- data.frame(ID = rep(1:100, each=n/100),<br>
&gt;                  intTime = rep(1:(n/100), times=100),<br>
&gt;                  FYE=lDate1 + 1:n)<br>
&gt; DT &lt;- as.data.table(df)<br>
&gt; DT[rbinom(n, size=1, prob=0.05)==1, FYE:=NA]<br>
&gt; DT[, reportDate := NA] #Bad line: comment it out and nothing breaks!<br>
&gt; DT[, intFYE      := get_diff_month(FYE, as.Date(&quot;1jan1900&quot;, &quot;%d%b%Y&quot;))]<br>
&gt; intDT &lt;- DT[ , list(FYE, intTime, ID)]<br>
&gt; newDates &lt;- intDT[, intTime] - 1<br>
&gt; intDT[, intTime := newDates]<br>
&gt; #Set keys<br>
&gt; key(DT)    &lt;- c(&quot;ID&quot;, &quot;intTime&quot;)<br>
&gt; key(intDT) &lt;- c(&quot;ID&quot;, &quot;intTime&quot;)<br>
&gt; DT &lt;- merge(DT, intDT, all.x=TRUE)<br>
&gt; DT[, intFYE_Next := get_diff_month(FYE.y, as.Date(&quot;1jan1900&quot;, &quot;%d%b%Y&quot;))]<br>
&gt;<br>
&gt; sessionInfo() 1:<br>
&gt;<br>
&gt; R version 2.13.2 (2011-09-30)<br>
&gt; Platform: x86_64-pc-linux-gnu (64-bit)<br>
&gt;<br>
&gt; locale:<br>
&gt;  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C<br>
&gt; LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8     LC_MONETARY=C<br>
&gt;<br>
&gt;  [6] LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C<br>
&gt;          LC_ADDRESS=C               LC_TELEPHONE=C<br>
&gt; [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C<br>
&gt;<br>
&gt; attached base packages:<br>
&gt; [1] stats     graphics  grDevices utils     datasets  methods   base<br>
&gt;<br>
&gt; other attached packages:<br>
&gt; [1] data.table_1.7.7<br>
&gt;<br>
&gt; loaded via a namespace (and not attached):<br>
&gt; [1] tools_2.13.2<br>
&gt;<br>
&gt; sessionInfo() 2:<br>
&gt;<br>
&gt;<br>
&gt; R version 2.14.0 (2011-10-31)<br>
&gt; Platform: x86_64-pc-mingw32/x64 (64-bit)<br>
&gt;<br>
&gt; locale:<br>
&gt; [1] C<br>
&gt;<br>
&gt; attached base packages:<br>
&gt; [1] stats     graphics  grDevices utils     datasets  methods   base<br>
&gt;<br>
&gt; other attached packages:<br>
&gt; [1] data.table_1.7.7<br>
&gt;<br>
&gt; loaded via a namespace (and not attached):<br>
&gt; [1] tools_2.14.0<br>
&gt;<br>
&gt; Thanks Christoph<br>
&gt;<br>
&gt; --<br>
&gt; --------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
&gt;<br>
&gt; Christoph Jäckel (Dipl.-Kfm.)<br>
&gt;<br>
&gt; --------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
&gt;<br>
&gt; Research Assistant<br>
&gt;<br>
&gt; Chair for Financial Management and Capital Markets | Lehrstuhl für<br>
&gt; Finanzmanagement und Kapitalmärkte<br>
&gt;<br>
&gt; TUM School of Management | Technische Universität München<br>
&gt;<br>
&gt; Arcisstr. 21 | D-80333 München | Germany<br>
&gt;<br>
&gt; Mailto: <a href="mailto:christoph.jaeckel@wi.tum.de">christoph.jaeckel@wi.tum.de</a> | Web: <a href="http://www.fm.wi.tum.de" target="_blank">www.fm.wi.tum.de</a><br>
&gt;<br>
&gt; Phone: <a href="tel:%2B49%2089%20289%2025487" value="+498928925487">+49 89 289 25487</a> | Fax: <a href="tel:%2B49%2089%20289%2025488" value="+498928925488">+49 89 289 25488</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; Head of Chair:<br>
&gt;<br>
&gt; Univ.-Prof. Dr. Christoph Kaserer<br>
&gt;<br>
&gt; ----------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
&gt;<br>
&gt; E-Mail Disclaimer<br>
&gt;<br>
&gt; Der Inhalt dieser E-Mail ist vertraulich und ausschliesslich<br>
&gt; fuer den bezeichneten Adressaten bestimmt. Wenn Sie nicht<br>
&gt; der vorgesehene Adressat dieser E-Mail oder dessen Vertreter<br>
&gt; sein sollten, so beachten Sie bitte, dass jede Form der<br>
&gt; Kenntnisnahme, Veroeffentlichung, Vervielfaeltigung oder<br>
&gt; Weitergabe des Inhalts dieser E-Mail unzulaessig ist. Wir<br>
&gt; bitten Sie, sich in diesem Fall mit dem Absender der E-Mail<br>
&gt; in Verbindung zu setzen.<br>
&gt;<br>
&gt; The information contained in this email is confidential. It is<br>
&gt; intended solely for the addressee. Access to this email by<br>
&gt; anyone else is unauthorized if you are not the intended<br>
&gt; recipient, any form of disclosure, reproduction, distribution<br>
&gt; or any action taken or refrained from in reliance on it, is<br>
&gt; prohibited and may be unlawful. Please notify the sender<br>
&gt; immediately.<br>
&gt; ----------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
&gt;<br>
</div></div>&gt; _______________________________________________<br>
&gt; datatable-help mailing list<br>
&gt; <a href="mailto:datatable-help@lists.r-forge.r-project.org">datatable-help@lists.r-forge.r-project.org</a><br>
&gt; <a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>--------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>

<br>Christoph Jäckel (Dipl.-Kfm.)<br><br>--------------------------------------------------------------------------------------------------------------------------------------------------------------------<br><br>Research Assistant<br>

<br>Chair for Financial Management and Capital Markets | Lehrstuhl für Finanzmanagement und Kapitalmärkte<br><br>TUM School of Management | Technische Universität München<br><br>Arcisstr. 21 | D-80333 München | Germany<br>

<br>Mailto: <a href="mailto:christoph.jaeckel@wi.tum.de" target="_blank">christoph.jaeckel@wi.tum.de</a> | Web: <a href="http://www.fm.wi.tum.de" target="_blank">www.fm.wi.tum.de</a><br><br>Phone: +49 89 289 25487 | Fax: +49 89 289 25488<br>

<br> <br><br>Head of Chair:<br><br>Univ.-Prof. Dr. Christoph Kaserer<br><br>----------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>

<br>E-Mail Disclaimer<br><br>Der Inhalt dieser E-Mail ist vertraulich und ausschliesslich<br>fuer den bezeichneten Adressaten bestimmt. Wenn Sie nicht<br>der vorgesehene Adressat dieser E-Mail oder dessen Vertreter<br>sein sollten, so beachten Sie bitte, dass jede Form der<br>

Kenntnisnahme, Veroeffentlichung, Vervielfaeltigung oder<br>Weitergabe des Inhalts dieser E-Mail unzulaessig ist. Wir<br>bitten Sie, sich in diesem Fall mit dem Absender der E-Mail<br>in Verbindung zu setzen.<br><br>The information contained in this email is confidential. It is<br>

intended solely for the addressee. Access to this email by<br>anyone else is unauthorized if you are not the intended<br>recipient, any form of disclosure, reproduction, distribution<br>or any action taken or refrained from in reliance on it, is<br>

prohibited and may be unlawful. Please notify the sender<br>immediately.<br>----------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>


</div>