eclipse-sumo / sumo

Eclipse SUMO is an open source, highly portable, microscopic and continuous traffic simulation package designed to handle large networks. It allows for intermodal simulation including pedestrians and comes with a large set of tools for scenario creation.
https://eclipse.dev/sumo
Eclipse Public License 2.0
2.55k stars 1.43k forks source link

OSG tests on Windows fail frequently #12347

Open m-kro opened 1 year ago

m-kro commented 1 year ago

Most of the tests fail for various reasons (output different, exitcode) since mid-December. There are some which run through every day and almost none fail seven days in a row.

m-kro commented 1 year ago

I can't reproduce the problem on my local system. On the test server, roughly 2/3 of the tests fail with the same error code but there is no clear pattern (every test fails within a few repetitions). As the problem appeared with the introduction of the HUD, it might be related to osgText or OSG camera stuff...

@behrisch @namdre Any thoughts how to continue? Does the Windows test server use the same OSG version as in SUMO_LIBRARIES?

behrisch commented 1 year ago

You did try with the debug build already I suppose? You could login to the test server and run things there. Are the failures on your local system just very rare or didn't you experience any at all? The test server has the most recent SUMOLibraries with OSG-3.6.5

m-kro commented 1 year ago

Graphic drivers have been updated on the test system but sumo-gui crashes still with message Warning: detected OpenGL error 'invalid enumerant' at Before Renderer::compile

behrisch commented 1 year ago

Maybe we finally need to move to a new OpenGL version on Windows? Can you find out which change triggered the failures?

m-kro commented 1 year ago

It is related to the changes in #11473 at 14.12.2022. There the HUD had been enabled in the release version. So far I see two possible triggers in this context:

m-kro commented 1 year ago

Actually looks like the crashes became more frequent after the graphics driver update (~115 succeeding tests before vs. ~70 after the update)...

m-kro commented 1 year ago

The OpenGL warning seems to be unrelated as it is printed whether the HUD is active or not. The crash is related to the HUD as the simulation runs through when this feature is disabled.

m-kro commented 1 year ago

OpenGL error happens very randomly, making 300+ tests fail one day and 50 the next...

m-kro commented 1 year ago

The virtual machine uses the OpenGL 1.1 standard (1997) which misses quite some of the later developments. GLIntercept prints errors for settings

which corresponds to the OSG error detected OpenGL error 'invalid enumerant' at after RenderBin::draw(..) as 3D texture has been introduced in OpenGL 1.2.