cmu-phil / tetrad

Repository for the Tetrad Project, www.phil.cmu.edu/tetrad.
GNU General Public License v2.0
404 stars 110 forks source link

Cannot save Tetrad files #1819

Closed kfalbo closed 3 weeks ago

kfalbo commented 3 weeks ago

As of last Friday (8/30), I have not been able to save and reopen Tetrad files. When I attempt to save a session, I receive a pop-up that says "Processing (click to stop)" which remains on the screen indefinitely. After I click to stop the saving process, I see that the file appears to have saved anyway, even though Tetrad did not indicate that it saved successfully. I then attempt to reopen this saved file and receive an error message (see attached screenshot). I have tried saving multiple files on different days since Friday, and none can be reopened. Capture

jdramsey commented 3 weeks ago

Can you give me more information? This is the first I've heard that the saving process itself might hang... Can you remember what sorts of items you had in your session, how big the datasets were, how many, and things like that?

kfalbo commented 3 weeks ago

The sessions have been various sizes - some including just one dataset, others including multiple. All sessions have included data and searches. Some sessions have also included knowledge, parametric models, estimators, etc. Datasets have been a maximum of 115 variables and 104 rows. Let me know what other information I can provide that would be helpful!

jdramsey commented 3 weeks ago

Hmm... that does not sound problematic. Let me think about it for a while.

It's possible the process needs more RAM. How much RAM do you have on your machine? If you open up a terminal window and navigate to the Tetrad jar, you can type, e.g., this, to use 10 G of RAM.

java -Xmx10g -jar [name of tetrad jar]

jdramsey commented 3 weeks ago

Also, what version of Java are you using? That is, open a terminal and type,

java -version

Thanks.

cg09 commented 3 weeks ago

joe,

One version of TETRAD, a while back, could only save files on a MAC to the user file...might that be the problem here.

Clark

On Fri, Sep 6, 2024 at 4:46 AM Joseph Ramsey @.***> wrote:

Also, what version of Java are you using? That is, open a terminal and type,

java -version

Thanks.

— Reply to this email directly, view it on GitHub https://github.com/cmu-phil/tetrad/issues/1819#issuecomment-2333556824, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD4Y3OMHRPBP32Z5JY7BY3LZVFTXRAVCNFSM6AAAAABNW3SA5OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMZTGU2TMOBSGQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

jdramsey commented 3 weeks ago

Oh, in addition, could you tell me what type of computer you're using, Mac or PC?

Thanks.

jdramsey commented 3 weeks ago

Clark,

Good point. Tetrad 7.6.5 was compiled under Corretto JDK 21--

Joe

kfalbo commented 3 weeks ago

I am using a PC with java version 21.0.4 and Tetrad version 7.6.4-0. My computer has 16.0 GB installed RAM, 15.7 GB usable.

jdramsey commented 3 weeks ago

I in fact have a Windows machine. It's not my main machine, but let me give it a shot. I'm on campus at the moment, but maybe tonight or tomorrow I'll try it.

Oh wait, this may be relevant. Tetrad 7.6.4 was compiled under Corretto 17. Could 21 be giving you grief because of that? Tetrad 7.6.5 was compiled under 21. Maybe I should make this clear somewhere.

cg09 commented 3 weeks ago

at one point you warned only to use versions compiled after 18

On Fri, Sep 6, 2024 at 11:58 AM Joseph Ramsey @.***> wrote:

I in fact have a Windows machine. It's not my main machine, but let me give it a shot. I'm on campus at the moment, but maybe tonight or tomorrow I'll try it.

Oh wait, this may be relevant. Tetrad 7.6.4 was compiled under Corretto

  1. Could 21 be giving you grief because of that? Tetrad 7.6.5 was compiled under 21. Maybe I should make this clear somewhere.

— Reply to this email directly, view it on GitHub https://github.com/cmu-phil/tetrad/issues/1819#issuecomment-2334365607, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD4Y3OPWJY2EDFU5MN6CNRTZVHGJHAVCNFSM6AAAAABNW3SA5OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMZUGM3DKNRQG4 . You are receiving this because you commented.Message ID: @.***>

jdramsey commented 3 weeks ago

OK, sorry for the delay; I keep getting pulled into other projects. Let me pull out my Windows laptop and see if I can get saving to not work when I run Tetrad 7.6.1 under Corretto JDK 21.

jdramsey commented 3 weeks ago

OK, I have downloaded JDK 21:

image

I will now try to make a complicated session and see if I can break Tetrad.

By the way, thanks for being patient with me; I'm not usually this slow...

jdramsey commented 3 weeks ago

Harumph. I'm not having trouble.

I have a theory as to why you're having trouble with JDK 21 with Tetrad 7.6.4. As I said, 7.6.4 was compiled under JDK 17. The threading model (for parallelization) in JDK 21 to use virtual threads. It's possible that the threads in JDK 7.6.4 require JDK 17 while the threads in 7.6.5 require JDK 21.

I'll think about that. If it makes sense after a couple of days, I'll change the documentation.

Meanwhile, try downloading and installing JDK 17 for use with Tetrad 7.6.4 and see if the problem goes away.

Also sorry I'm not using Windows more. I used to use Windows all the time, but my poor fingers have gotten used to the keyboard and all of the command key combinations on a Mac. Otherwise, the machines behave identically for my purposes, for the software I use.

kfalbo commented 3 weeks ago

I had Java uninstalled and reinstalled on my laptop this morning (same version). Now the Tetrad file saving seems to be working. I'm not sure what has changed, but it may have just been a problem with my specific laptop.

Sorry for the confusion. I really appreciate you trying to work through this and find a solution. I will let you know if I run into this issue again in the future!

jdramsey commented 3 weeks ago

Great, thank you so much! If you're done with this issue you can close it. (Feel free to re-open it later or open another issue.)