Bug introduced in 11.0.0 and fixed in 11.0.1

The following executes without issue in 10.4.1 and returns immediately. However in 11.0 when the JoinAcross line is executed all available system memory is immediately consumed and after a long while the kernel crashes.

dates = Transpose[{ConstantArray[First@# , Length@Last@#], Last@#, 
         RandomInteger[{20, 100}, Length@Last@#]}] &@
      {#, DateRange[#, {2016, 6}, "Quarter"]} & /@
     DateRange[{1994, 3}, {2016, 6}, "Quarter"] //
   Flatten[#, 1] &;

dsDetail = 
  AssociationThread[{"InitialDate", "AccountingDate", "Value"}, #] & /@
     dates // Dataset;

dsSummary = AssociationThread[{"AccountingDate", "Value"}, #] & /@
    With[{d = DateRange[{1994, 3}, {2016, 6}, "Quarter"]}, 
     Transpose@{d, RandomInteger[{100, 200}, Length@d]}] //

This next line will run fine in 10.4.1 but will consume all available system memory and crash the kernel in 11.0. The OS is very unresponsive while this is executing in 11.0 so I would advise you have all your Mathematica work saved and closed as a precaution.

JoinAcross[dsDetail, dsSummary, "AccountingDate", 
 KeyCollisionFunction -> ({"Detail" <> #, "Summary" <> #} &)]

It is a bug, correct? Version 11.0 Win 7 Ent SP1

Bug: [CASE:3694291]

  • $\begingroup$ On OS X it hangs, but I didn't wait for a crash. (I.e. yes I see a problem too.) You reported this to support, right? $\endgroup$ – Szabolcs Aug 22 '16 at 12:28
  • $\begingroup$ @Szabolcs Will now. Wanted to confirm. $\endgroup$ – Edmund Aug 22 '16 at 12:30
  • $\begingroup$ On my MacOS X 10.10, Mathematica 10.3.1, dsDetail//AtomQ and dsSummary//AtomQ both yield True. On Mathematica 11, they yield False, so the final JoinAcross command doesn't work. Actually, on my computer (v11) Dataset doesn't even create the Dataset object... something is wrong. $\endgroup$ – QuantumDot Aug 22 '16 at 12:56
  • $\begingroup$ @QuantumDot Using Normal on the Datasets in JoinAcross still results in the same behavior. After your comment I would have thought that this change would work since it drops the Dataset into its list of Associations. However there was no joy to be found. $\endgroup$ – Edmund Aug 22 '16 at 14:28
  • $\begingroup$ V11.0.0 fails and V10.4 works on Linux. It appears that it uses increasing amounts of memory (more than 50GB) before I stopped it. You can wrap the calculation in MemoryConstrained if you don't actually want to see it crash. $\endgroup$ – mikado Aug 22 '16 at 21:24

This bug has been fixed in the just released Mathematica 11.0.1.

enter image description here

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.