Neos-Metaverse / NeosPublic

A public issue/wiki only repository for the NeosVR project
193 stars 9 forks source link

"Failed sync" (with hot-fix) #3313

Open Super-ray0001 opened 3 years ago

Super-ray0001 commented 3 years ago

Describe the bug?

Could not locate main asset or Newtonsoft.Json.JsonReaderException: The reader's MaxDepth of 512 has been exceeded. will lock up the sync processes and will not attempt any further items in the queue.

Relevant issues

no

To Reproduce

del a file or have a nested scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll in a scroll (x60+)

to fix copy A.lz4bson Bad-file.lz4bson run neos close after sync and then just del Bad-file.lz4bson run neos and cloas after sync

Expected behavior

Failed sync to be skipped and go to next in queue. re try on last in queue and report failed to end user based on object name or image of object

Log Files

No response

Screenshots

No response

How often does it happen?

Always

Does the bug persist after restarting Neos?

Yes

Neos Version Number

2021.10.30.605

What Platforms does this occur on?

Windows

Link to Reproduction Item/World

No response

Did this work before?

I Don't Know

If it worked before, on which build?

info unknonw

Additional context

No response

Reporters

No response

Frooxius commented 3 years ago

Can you share a log file please?

shiftyscales commented 3 years ago

They had provided me the log, @Frooxius- it appears the issue is specifically caused by an object with a very high nested depth (it was one of those scrolls containing a scroll containing a scroll containing...)

The relevant exception is at 385:

Exception loading the object graph from asset local://im8bbjk8bussvd5yjc0fma/yP_Gb--QB0OHyYYx9VGAbQ.lz4bson: Newtonsoft.Json.JsonReaderException: The reader's MaxDepth of 512 has been exceeded.

More noteworthy however, seemingly no other unsynced records would attempt to sync after that exception had been thrown and just kept piling up for Ray.

Ray had resolved the issue by replacing the lz4bson file with a different file altogether which allowed it to sync, and in turn, everything else had synced as well.

Frooxius commented 3 years ago

Thanks! I know the cause of the issue, unfortunately that's not something we'd fix for this, as it's an extreme case. This would get fixed with the custom serialization format: https://github.com/Neos-Metaverse/NeosPublic/issues/211

However I need the stacktrace so I can make sure this doesn't stop other things from working. I'll have a look where this occurs and make sure it doesn't prevent other things from syncing.

zodywoolsey commented 3 years ago

im contributing my log file of a similar situation, error is at line 457.

DESKTOP-06PBV10 - 2021.11.10.1265 - 2021-11-30 17_06_55.log

Any files added will sync until it reaches this item and then it gets stuck again.

ukilop commented 2 years ago

2021.11.10.1253 - 2021-11-30 13_55_35.log got the same error on line 348 offending object is called Black Beret

my offending object was the first in the list always, so nothing ever synced past it

Edit: Got everything fixed, at first it was hard to find the exact file because the db paths are weird, but then found it, deleted it, game couldnt sync still because not found. so insted took another saved item and saved a copy as the name of the item thats failing. then everything worked like a charm and starting syncing.

sctanf commented 2 years ago

I got into a similar situation, with an asset larger than my storage size, it failed syncing and did not sync anything else. Logs showed an out of space failure, with a stack trace (2021.11.10.1253 - 2022-01-01 07_30_38.log line 251). I also tried deleting the asset file (2021.11.10.1253 - 2022-01-01 08_32_11.log line 148) or editing the asset file (2021.11.10.1253 - 2022-01-01 08_34_27.log line 156), and also got sync fail with a stack trace both times.

After this I used the "hotfix" replacing the asset with a copy of a different one renamed, and that did work for me. I got the filename from logs and found the file in LocalLow\Solirax\NeosVR\Assets.