TickThreading - concurrent entity/tile entity ticks and other optimisations

  • FTB will be shutting down this forum by the end of July. To participate in our community discussions, please join our Discord! https://ftb.team/discord

XANA

New Member
Jul 29, 2019
3
0
0
Have build 1488 installed on a private Mindcrack server; Traincraft is having issues with trying to add fuel to the trains, plus they wont even drive. There's also spazzing when getting into a train, though that quits after a second or two.
 

nallar

New Member
Jul 29, 2019
270
0
0
Recently installed (1393) this on my FTB Ultimate server and seen good performance improvements, unfortunately I seem to have an issue.

On server restart any wooden pipes on chunk boundaries don't seem to reconnect to blocks in the next chunk and look like they have nothing to connect to. I've done some testing and this doesn't occur with TT turned or with all components in the same chunk.
Haven't tested all the mod machines, but I've seen it with IC2, Forestry, GT and vanilla chests too, any advice on a way to fix this?

I wasn't able to reproduce this issue, although I only just noticed your message today and we're now 100 builds ahead.
 

nallar

New Member
Jul 29, 2019
270
0
0
Have build 1488 installed on a private Mindcrack server; Traincraft is having issues with trying to add fuel to the trains, plus they wont even drive. There's also spazzing when getting into a train, though that quits after a second or two.
Should be fixed in latest.
 

XANA

New Member
Jul 29, 2019
3
0
0
Build (1500) is showing severe tick errors every time I turn around.

Code:
2013-05-02 20:34:00 [SEVERE] [TickThreading] Exception ticking entity EntityFreightWagenDB['entity.MinecartFreightWagenDB.name'/4515, l='world', x=-130.60, y=91.50, z=232.50] in rX: -8, rZ: 14, hashCode: 917496/Overworld/0:
java.lang.NullPointerException
    at src.train.common.core.HandleMaxAttachedCarts.PullPhysic(HandleMaxAttachedCarts.java:99)
    at src.train.common.core.handlers.LinkHandler.StakePhysic(LinkHandler.java:429)
    at src.train.common.core.handlers.LinkHandler.handleStake(LinkHandler.java:67)
    at src.train.common.api.EntityRollingStock.j_(EntityRollingStock.java:646)
    at src.train.common.entity.rollingStock.EntityFreightWagenDB.j_(EntityFreightWagenDB.java:122)
    at yc.a(World.java:365)
    at in.a(WorldServer.java:647)
    at yc.g(World.java:2255)
    at me.nallar.tickthreading.minecraft.tickregion.EntityTickRegion.doTick(EntityTickRegion.java:48)
    at me.nallar.tickthreading.minecraft.tickregion.TickRegion.run(TickRegion.java:42)
    at me.nallar.tickthreading.minecraft.ThreadManager$2.run(ThreadManager.java:90)
    at me.nallar.tickthreading.minecraft.ThreadManager$1.run(ThreadManager.java:41)
    at me.nallar.tickthreading.minecraft.ThreadManager$ServerWorkThread.run(ThreadManager.java:157)

One of the many spamming errors I got while using this build. Strangely enough, I had these errors on build 1400 also. Between 1400 and 1410, it was fixed. (...for the most part.)

AMENDMENT: There's no difference between this error and the others that spam the console every second. Its all a HandleMaxAttachedCarts/Null Pointer issue.
 

XANA

New Member
Jul 29, 2019
3
0
0
Bump, cant even run my server using 1555 or 1570. 1555 has my world suffering from memory leaks of all things, all of which occurred 6 out of 6 times after rebooting several times.

1570 (as well as 1569, I theorize all builds after 1558 have this problem but meh) deadlocks the moment after Loading NEI. The fix for #460 (no surprise!) might have something to do with this.
 

Nohau

New Member
Jul 29, 2019
4
0
0
Are you using MCPC L23 as it appears L23 isn't compatible yet give nallar some time :) AS L23 was just released. Also if you haven't I highly suggest you post the deadlock's and Issues on his git repo As that is looked at often and perhaps other users may be able to help you.

You can see all open issues OPEN ISSUES and create a new Issue HERE

Don't forget to add the full TickThreading log file located in your Mineccraft/TickThreadingLogs directory that is having the issue.
 

nallar

New Member
Jul 29, 2019
270
0
0
Bump, cant even run my server using 1555 or 1570. 1555 has my world suffering from memory leaks of all things, all of which occurred 6 out of 6 times after rebooting several times.

1570 (as well as 1569, I theorize all builds after 1558 have this problem but meh) deadlocks the moment after Loading NEI. The fix for #460 (no surprise!) might have something to do with this.

The memory leak warning is just a warning, that's all. As long as you have cleanWorlds enabled in TT's config it isn't a big issue, as it will only result in a memory leak of ~0.5 kb.

Deadlock issue should be fixed now.

Recently added another possible fix for the AE item loss bug.
 

nallar

New Member
Jul 29, 2019
270
0
0
Small update, the fix for AE item loss mostly works, but there are still some cases where items can vanish.
 

aMannus

New Member
Jul 29, 2019
6
0
0
Small update, the fix for AE item loss mostly works, but there are still some cases where items can vanish.

In what cases does the item loss still occur after this small update?

Loving tick threading so far by the way, really makes a huge difference.
 

TheSourceCode95

New Member
Jul 29, 2019
10
0
0
Now I have got no idea of how this mod works exactly, but I do have a small suggestion. Sometimes CurrentModificationExceptions show up, especially with computercraft. If this mod actually replaces code/classes, might I suggest replacing all ArrayLists with CopyOnWriteArrayLists? I'm not sure how this would effect memory usage, just an idea.
 

nallar

New Member
Jul 29, 2019
270
0
0
Now I have got no idea of how this mod works exactly, but I do have a small suggestion. Sometimes CurrentModificationExceptions show up, especially with computercraft. If this mod actually replaces code/classes, might I suggest replacing all ArrayLists with CopyOnWriteArrayLists? I'm not sure how this would effect memory usage, just an idea.

There are many more classes which will throw comodification exceptions than just ArrayList, and replacing all ArrayLists with CopyOnWriteArrayLists would result in abysmal performance, without actually fixing many cases where modders/minecraft iterate unsafely anyway.
 

TheSourceCode95

New Member
Jul 29, 2019
10
0
0
Actually, all the cmods I have come across so far are ones caused by computercraft using arraylists. Maybe some kind of system that replaces one line of code as soon as a cmod occurs? Not sure if that's possible though.
 

nallar

New Member
Jul 29, 2019
270
0
0
Actually, all the cmods I have come across so far are ones caused by computercraft using arraylists. Maybe some kind of system that replaces one line of code as soon as a cmod occurs? Not sure if that's possible though.
Not possible. Just report the issue and I'll fix it properly.
 

TheSourceCode95

New Member
Jul 29, 2019
10
0
0
Okay, I wasn't sure how you change code at all. Let's see... The log is attached.
 

Attachments

  • tickthreading.txt
    104.5 KB · Views: 108

nallar

New Member
Jul 29, 2019
270
0
0
Oh, you're on 942. Try latest, there's no longer a "stable" build because that was far too outdated.

Although it won't fix the issue there, that's actually a computercraft bug which can occur under vanilla too. If it does happen under vanilla the server will just freeze, instead of showing a report.

edit: Latest does have an experimental change which may be able to recover from that issue by killing the threads which deadlock. Not tested.
 

tiff

New Member
Jul 29, 2019
164
0
0
Amazing mod, the multi-thread tile-entity is great.

Small problem. I'm using MCPC+ build L28 and running Yogcraft. Both aggressive and passive mobs seem to react slowly sometimes ignoring the player completely. This also seems to affect floating entities.

Update: While traveling in a boat chunks appear not the load but once you exit they do

This a current issue or something malfunction on my side? Thanks!
 

supernerdyharry

New Member
Jul 29, 2019
41
0
0
Im having two problems on my server. My server is an ftb ultimate server and normal has around 50-80 people always online, the mod has been working great about from the two problems that are, when teleporting to a mystcraft age the user will crash on teleporting there. The second issue is really quite annoying when ever some one dies the normally keep there Armour and keep one random item in their inventory but it always depends on how they died.
 

DoctorSLO

New Member
Jul 29, 2019
6
0
0
I just installed that on my server and after a few minutes I needed to remove it. :(
In console there were alot of errors showing up and the server just freezed every 2 minutes for about 20 seconds.

I am curious what that patcher do with the mods. What are the benefits of having the patched mod?
 

MinerDude333

New Member
Jul 29, 2019
49
0
0
I just installed that on my server and after a few minutes I needed to remove it. :(
In console there were alot of errors showing up and the server just freezed every 2 minutes for about 20 seconds.

I am curious what that patcher do with the mods. What are the benefits of having the patched mod?
It makes the mod able to separate it's ticks into different threads. It enables this entire mod to work, because otherwise, it would never work and throw lots of errors.
 

nallar

New Member
Jul 29, 2019
270
0
0
Im having two problems on my server. My server is an ftb ultimate server and normal has around 50-80 people always online, the mod has been working great about from the two problems that are, when teleporting to a mystcraft age the user will crash on teleporting there. The second issue is really quite annoying when ever some one dies the normally keep there Armour and keep one random item in their inventory but it always depends on how they died.

Fixed the issue with armour in latest. Can you make an issue with a crash report from one of the crashing players?