There seems to be some kind of major bug with memory segments in shards. I sent a creep over to the new shard, and as soon as it appeared, I started seeing all kinds of memory segment related errors on the main shard. I haven't narrowed it down, but it appears my code on the new shard was writing to memory segments which ended up overwriting data in the main segment, which caused chaos on my main shard since I use segments for storing all my room layouts and other important information.
Posts made by kshepard
-
RE: PTR Changelog 2017-07-20: world shards
-
RE: Changelog 2017-07-05
Sounds like a good decision, thanks! It was worth a try.
-
RE: Changelog 2017-07-05
It seemed a little better after the reset frequency change, but now I'm back to getting a timeout every minute or two for the past hour or so.
-
RE: Changelog 2017-07-05
It made a little bit of difference for me. I'm receiving fewer timeouts, but am still seeing on average one timeout every 10 minutes.
-
RE: Changelog 2017-07-05
Maybe not related, but I'll mention it just in case. In the half hour that this has been active, I've seen 7 occurrences of:
"Script execution timed out: CPU limit reached"
Edit: after another hour, I'm up to 29 timeouts.
-
RE: PTR Changelog 2017-06-23
Ah, interesting, didn't realize that. Thanks!
-
RE: PTR Changelog 2017-06-23
Nice!
Possible bug to report: I nuked myself in E28N61. At the time the nuke dropped, my 3 spawns had creeps spawning with 30 - 150 ticks remaining each. When the spawn animation completed, none of the creeps came out. I think they're still supposed to spawn, but I don't have a lot of experience with nukes, so I may just be misinformed.
-
RE: PTR Changelog 2017-06-23
Cool. I'm completely out of energy from some of the last bugs. If you inject some energy into my storage and/or terminals I'll be able to test a lot faster.
-
RE: PTR Changelog 2017-06-23
My code keeps trying to balance energy among rooms, and it's constantly trying to send the same amount of energy from one room to another, which gets a status of OK, but no transfer actually occurs, so the next tick it tries to do the same thing again. An example of this is an energy transfer from E21N57 to E21N51, which is currently failing with an OK status every tick.
-
RE: PTR Changelog 2017-06-23
It seems terminal transfers aren't working. I'm receiving OK statuses, but no resources are actually being transferred.
-
Link cooldown visual
I really like the new terminal cooldown visual. It'd be cool to have the same treatment applied to links.
-
RE: Memory problem with storing unicode characters
Checked my memory this morning and it was at 750KB. Then ran a line of code to remove all � characters from RawMemory and it was reduced to 100KB! These just keep piling up.
-
RE: Memory problem with storing unicode characters
Thanks tedivm. I hopped over to #diplomacy to discuss, and it appears I am already ignoring the bit that causes problems. My serialization/deserialization logic is exactly the same as dissi's, so it seems this is a genuine issue for private servers.
-
Memory problem with storing unicode characters
It seems if you store unicode characters in memory, occasionally additional characters will be added to the string automatically. An easy way to reproduce this is to run the following code:
Memory.test = 'য়জঝঞঠডঢড়ৠৢચਜਝਡਢજઝડઢછૠૢଜଝଞଡଢਫ਼ਙࡎࡏࡐࡒࡓࡔࢎҠૉઑટ࣏࣓࣎ࣔएओॎॏ॓॔ਖ਼ଓ॑ऐऒঐঔৎਟ࣑ઔটਚਜ਼ઊଊԡӡաӢԞԝԟ՟ਗ਼ਛਖ਼છਙ';
Wait a period of time, and eventually `Memory.test` will include additional characters. For example:
য়জঝঞঠডঢড়ৠৢચਜਝਡਢજઝડઢછૠૢଜଝଞଡଢਫ਼ਙࡎࡏࡐࡒࡓࡔࢎҠૉઑટ࣏࣓࣎ࣔएओॎॏ॓॔ਖ਼ଓ॑ऐऒঐঔৎਟ࣑ઔ���ਚਜ਼ઊଊԡӡաӢԞԝԟ՟ਗ਼ਛਖ਼છਙ
These seem to always be the unicode 'replacement character': � (U+FFFD). They appear in memory all by themselves and wreak havoc. This seems to only be happening on private servers, though I haven't tested it extensively on the main server. I posted this in Slack, and several other people confirmed that they've also noticed the issue. -
RE: PTR Changelog 2016-11-25
Has the feature to use this mechanic for preventing novice areas from being designated been implemented yet? There's still no word of it in the documentation, and I'm wondering if I should still be reserving rooms to prevent novice areas, or if signing the controller ever 2-3 days will suffice.