Closed ghost closed 5 years ago
The results of this bug can differ a bit each time we see it. I'm using this comment to detail some of the bugs seen when after these steps are followed.
More screenshots that may help incoming.
Also able to reproduce the disappearing olive oil bug on normal speed.
(Macbook Pro, Chrome 71.0.3578.98)
Adding visual examples to bug side effects found in Katie's previous comment: All videos in google photo album: https://photos.app.goo.gl/ejfVQ4YoxBLw5CuU6
"4. Moving elements can cause them to phase through beakers, into the burner, etc"
here is another example of the problem she found. On iPad (12.1.1) this problem can sometimes even prevent the brick from being removed from the olive oil. When dragged upward, it instead moves down through the beaker and into the burner and gets trapped. (first video)
"8. dragging thermometer over objects can push them around without attaching thermometer" (second video)
"9. Liquids can be placed on top of each other and overlap"
"10. burner can take energy from adjacent object" (third video)
Seems like these are high priority issues...especially reset not properly resetting the sim.
I've noticed that if you take the brick or iron out of the liquid and you further heat the liquid, the brick or iron will behave as if it's still in the liquid, i.e. by giving off energy chunks.
EDIT: Or maybe this is just a normal feature? The brick or iron is cooling?
I've noticed that if you take the brick or iron out of the liquid and you further heat the liquid, the brick or iron will behave as if it's still in the liquid, i.e. by giving off energy chunks.
@lmulhall-phet can you add visuals to confirm this behavior is incorrect? If the blocks are in a warm fluid and then removed, they should lose heat to the air as you've described. However, if it's clear that they're still heating up like they are in the liquid, that is indeed a problem.
@chrisklus I'm looking at it right now and I'm fairly certain what I'm seeing is the "blocks are warm, removed, then lose heat" behavior. Sorry. Thought it might help you guys suss out the problem if it turned out the sim thought the blocks were still in the liquid.
One more side effect of this bug: I've seen the whole beaker of olive oil disappear and then reappear in its starting position. @KatieWoe says @rea-laura observed the same thing or something similar.
I dug into this, and it likely was due to some position vectors being changed out from under the thermal model elements (e.g. blocks and beakers). The only reasonable explanation that @chrisklus and I could come up with for this was that the vector pooling that was being done to reduce vector allocations wasn't working correctly, i.e. a vector was being freed that was still in use somewhere else. I removed all pool-based creation and freeing of vectors except for in the EnergyChunkDistributor (since it is a more controlled environment), and the problem appears to be resolved.
Assigning to @lmulhall-phet to test on master.
@jbphet looks good on master.
@lmulhall-phet nice! Do you think we're ready to close?
@chrisklus Our fastest method of causing the bug didn't work after ~5 min, so I think its good.
@KatieWoe sounds good, thank you. Closing.
Test Device
MacBook Air
Operating System
macOS 10.14.2
Browser
71.0.3578.98
Problem Description
For https://github.com/phetsims/QA/issues/258. This is bug with convoluted steps. https://github.com/phetsims/energy-forms-and-changes/issues/165 and https://github.com/phetsims/energy-forms-and-changes/issues/166 occur as a result of this bug.
Steps to Reproduce
Screenshots
Troubleshooting Information
Name: Energy Forms And Changes URL: https://phet-dev.colorado.edu/html/energy-forms-and-changes/1.0.0-dev.15/phet/energy-forms-and-changes_en_phet.html Version: 1.0.0-dev.15 2019-01-15 20:46:49 UTC Features missing: touch User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Language: en-US Window: 1440x821 Pixel Ratio: 1/1 WebGL: WebGL 1.0 (OpenGL ES 2.0 Chromium) GLSL: WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium) Vendor: WebKit (WebKit WebGL) Vertex: attribs: 16 varying: 15 uniform: 1024 Texture: size: 16384 imageUnits: 16 (vertex: 16, combined: 80) Max viewport: 16384x16384 OES_texture_float: true Dependencies JSON: {}