- cross-posted to:
- [email protected]
- cross-posted to:
- [email protected]
That can happen with any program, and should be a simple fix on the dev side
It is also something that can happen easily. Just program to log an error and then the error happens unexpected every frame.
So
300×1024×1024= 314,572,800kb
Assuming something like 200 bytes per log line
x5 = 1,572,864,000 logs
Assuming this is your standard console port with a 60fps frame rate lock:
÷60fps ÷ 60 seconds ÷ 60 minutes ÷ 24h = 303.407… days
You would need to play for nearly a year solid to generate that many logs at a rate of one per frame.
Given that’s probably not what’s happened, this is a particularly impressive rate of erroring
Yeah, that does not add up, you are right. There must be several error or it must include the stacktrace or something.
It’s possible that the log writer wanted to
fseek
to the end of the file and write something, but the target pointer value was somehow corrupted. Depending on the OS, the file might end up having a fuckton of zeroes in the skipped part.That should result in a sparse file on any sane filesystem, right?
Theoretically, yes. Theoretically NTFS supports sparse files, but I don’t know if the feature is enabled by default.
It supports it, but it’s opt-in by apps.
Enabling compression is another option (Though with a speed and size penalty), it’s user visible at least.
If you’re getting a stack trace every frame youd be there much sooner. Maybe like a week.`
It’s a crash log, not an error log. It’s probably dumping the entire memory stack to text instead of a bin dump every time it crashed. I would also suspect the crash handler is appending to the log instead of deleting old crashes and just keeping the latest. At several dozen gigas of RAM it would just take a couple of game crashes to fill up the 300GB.
To happen every frame without crashing the game, it’s more likely a warning ⚠️ “Warning, the texture is named 1.png instead of 1.PNG”
I vaguely remember the Nvidia driver generating tons of log files, so many that they piled up over years and filled my drive
Ok, but the second tweet is a bit redundant
Like what else would a .log file be? A video file? A Word Document? An executable?
Do you really need to inspect the properties to be told: “This .log file is certainly containing text. Thank you for installing Windows 10. Save 5% on your Office 365 subscription with code ‘ILOVEMICROSOFT’”
You should have rolling log files of limited size and limited quantity. The issue isn’t that it’s a text file, it’s that they’re not following pretty standard logging procedures to prevent this kind of thing and make logs more useful.
Essentially, when your log file reaches a configured size, it should create a new one and start writing into that, deleting the oldest if there are more log files than your configured limit.
This prevents runaway logging like this, and also lets you store more logging info than you can easily open and go through in one document. If you want to store 20 gb of logs, having all of that in one file will make it difficult to go through. 10 2 gb log files is much easier. That’s not so much a consumer issue, but that’s the jist of it.
Fully agree, but the way it’s worded makes it seem like log being a text file is the issue. Maybe I’m just misinterpreting intent though.
200GB of a text log file IS weird. It’s one thing if you had a core dump or other huge info dump, which, granted, shouldn’t be generated on their own, but at least they have a reason for being big. 200GB of plain text logs is just silly
no, 200gb of plain text logs is clearly a bug. I run a homelab with 20+ apps in it and all the logs together wouldn’t add up to that for years, even without log rotation. I don’t understand the poster’s decision to blame this on “western game devs” when it’s just a bug by whoever created the engine.
Agreed, and there’s a good chance that log is full of one thing spamming over and over, and the devs would love to know what it is.
It could be a matter of storing non-text information in an uncompressed text format. Kind of like how all files are base 0s and 1s in assembly, other files could be “logged” as massive text versions instead of their original compressed file type.
As a sysadmin there are few things that give me more problems than unbounded growth and timezones.
Printers. Desk phones. Wmi service crashing at full core lock under the guise of svchost.
Essentially, when your log file reaches a configured size, it should create a new one and start writing into that,
deletingarchiving the oldestFTFY
Sure! Best practices vary to your application. I’m a dev, so I’m used to configuring stuff for local env use. In prod, archiving is definitely nice so you can track back even through heavy logging. Though, tbh, if you’re applications getting used by that many people a db logging system is probably just straight better
I thought they were just trying to hammer home how wild it was for the file to get that big, since it’s just a text file.
Yeah and also when they said “300gb of crash logs”, i assumed it was a folder with thousands of files, instead of all those gbs in a single text file, that’s wild
if you assume the second post has ulterior meaning it could be that someone might not know what a crash log is, but most people who have interacted with computers at least once would be at least vaguely familiar window’s file description and understand that text file icon + >200 gb size is not normal
this is, of course, a rather big assumption.
most people don’t put that much though in a post and expecting them to will make your online experience a confusing mess.Like what else would a .log file be? A video file? A Word Document? An executable?
I think their point is that a 200gb text file is a wild size usage for a crash log, and there’s probably accidentally some binary data in that log. There’s no way a crash log can exceed 2x the size of the game binary itself.
Could be a bug in their crash handler, just like, infinitely looping and printing something over and over.
Binary data is almost always more compact than text data
It could be a binary file, though that would probably make it smaller if anything.
I’m guessing the point was the developer didn’t invent some proprietary log that also contained a dump and other things that could conceivably be very large. That would also be terrible design, but managing to create hundreds of gigs of text in a game crash log is a special kind of terrible.
Most people have zero understanding of how programs work. I have slightly more understanding than the average person and I didn’t catch that a crash log would nearly always be a text file.
It could be a XML or JSON with some embedded binary data (but to your point Windows isn’t gonna figure that out from the extension)
My log file in rimworld after I add my 691st mod
Oh no, I should probably check that.
Seems weird to critique “western game devs”
Developers of any region can be terrible.
Japanese game devs would NEVER. Because their bosses literally chain them to the desk until their code built from scratch works flawlessly.
(This belief may be out of date)
I’ve never heard anyone accuse of game of being “western jank” but I’ve heard plenty be called “eurojank” or “slavjank.”
Doesn’t make 'em bad. Some of my favorite games are slavjank. Like STALKER.
“westjank” should mean always-online singleplayer experiences with kernel anti-cheats and 300 gb crash logs
I’ve written code that has generated logs like that. In my case, I had all of my 12 threads writing to a logger, and over the course of 2 hours it got to about 250gb, which was the remainder space on my drive
I had this problem with my old phone…a One Plus 9. One Plus used to be so good now it’s full of bloatware and bugs. Their suggested fix was factory resetting the phone to factory due to them limiting what files could be checked.
Yeah, my OP9 was my third OnePlus phone and my last one. I installed a security update that made the cell radio completely non-functional and had to factory reset it. I use my phone for 2FA to get into my work computer, so this was simply unacceptable.
I realized I wasn’t doing enough with my phone to warrant flagship prices and ended up switching to a Pixel 6a I got on the cheap. Other than having to add wireless charging with an accessory, I haven’t looked back.
I switched to the Pixel 8. It’s okay, good camera but a little buggy. Last phone I REALLY liked was the LG G5 that had a slide-out battery. I think it was t-mobile(?) had a bonus where they gave you a free extra battery and charger for that battery. I could go for a couple days at it’s peak without a charger, just a battery swap
Opens with: Notepad
Does it, though?
Depends, how much RAM do you have?
I played this game start to finish on PC (A Frankenstein-esquire gaming rig)—never had this issue. I am guessing this is a made-up problem or just someone trying to run this game on a computer that is not capable of running it. a lot of people assume because they “have a pc” they can just run the latest and greatest game. Dude’s probably on his work issued thinclient trying to boot up a modern AAA game with basic-ass virtual resources and are like “huh?” when it doesnt work.
No crash log, under any circumstance, regardless of available resources, should reach 300GB. No useful information can be gathered and it probably meana the program was running an infinite loop.