dschu012 / d2s-editor

MIT License
169 stars 60 forks source link

Out of Memory #92

Closed doyou closed 2 years ago

doyou commented 2 years ago

Server:Windows 2008R2 IIS7.5 Zip | mpq files extracted to the right directories and constants.bundle.min.js code pasted.

After browsing a .d2s file, the STATS tab may appears and 10 seconds later, the page says "Out of Memory"!

Try it again and Press F12 then open the Devtools' Network tab, many "data/global/items/undefined.dc6" files are requested by utils.js:67. Meanwhile the server's memory using raised up until the error page appears.

doyou commented 2 years ago

When I Open "https://d2s.dschu012.dev/constants.html" and click Run:

`Uncaught (in promise) Error: Cannot find file: item-gems.json at d (d2s.bundle.min.js:1:72008) at t.readConstantData (d2s.bundle.min.js:1:75599) at HTMLButtonElement. (constants.html:60:110)

dschu012 commented 2 years ago

not really sure how to debug this for you, unless u provide the mpq's files. you might have more luck running the unit test in the library which i used to generate the data for the current patch.

https://github.com/dschu012/d2s/blob/master/tests/data/parser.spec.ts

doyou commented 2 years ago

not really sure how to debug this for you, unless u provide the mpq's files. you might have more luck running the unit test in the library which i used to generate the data for the current patch.

https://github.com/dschu012/d2s/blob/master/tests/data/parser.spec.ts

Thanks for your reply.

I moved all the files to another server, also Windows with IIS, everything is OK now. And the memory consumption is very small.

The memory is consumpted by the browser, not by the web server. The web client may be out of memory, it gradually took up nearly 3GB of memory and then crashed.

I open the pages on the 2nd server with the same PC's browser, perfect!

doyou commented 2 years ago

It's maybe the web server's fault due to the .net runtime.

I had put the d2s editor files pack into a subfolder of a site with dotnet framework 4.0 runtime on the 1st server. And I had prohibited the server-side scripts of this folder, so this maybe a pure static web pages folder. Then the browsers would be out ot memory. Weired.

The 2nd server is also a windows server, the site is also with dotnet framework runtime, but the version is 2.0, there is no problem...

Now I put the files into a newly created site without any runtimes, perfect again even processing d2r 2.5 saves!

BTW, I think the constants.html in the current version is no longer necessary.

doyou commented 2 years ago

Another issue: For some saves, the checkbox next to "Dead" is negative.