Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Neo Field Loses All Nesting Structure and Doesn't Conform to Rules in Field Settings for Child Blocks #765

Closed
brianrivet-tilt opened this issue Jul 6, 2023 · 5 comments

Comments

@brianrivet-tilt
Copy link

Bug Description

I am seeing some weird behavior on a site where I'm using Neo for my content builder. When I look at the entries in the CP for the pages having issues, the blocks in the Neo field are all showing as top level even though they aren't supposed to be, and when I look at it on the front end the pages don't render correctly because of it.

Steps to reproduce

I don't know how it happened in the first place, it just happened all of a sudden, so I can't tell you how to reproduce it, but I can provide you with database backups of the site having the issue and a backup where it wasn't so you can compare.

Expected behaviour

No response

Neo version

3.7.12

Craft CMS version

4.4.14

What is the affected Neo field's propagation method?

No response

Does this issue involve templating, and if so, is eager-loading used?

This is not a templating issue

@brianrivet-tilt
Copy link
Author

Just more information, I restored the database for the site using the backup I had that was not showing the issue, and it worked temporarily, but the site is showing thew same problem again, and no one has been in the site editing anything.

@ttempleton
Copy link
Contributor

That sounds like the block structure has either been deleted, or never been created e.g. for an applied draft or revision.

Until about two months ago, there was a bug where using Craft's runQueueAutomatically setting would cause entry revisions with Neo fields to not have any block structure until the queue was manually run, since they're created for revisions with queue jobs. Is there any chance you're using that setting, and an old revision has been applied? If not, then could you please send in those database backups and your composer.json/lock files to plugins@spicyweb.com.au and I'll see if I can figure anything out.

@brianrivet-tilt
Copy link
Author

I've sent the files to the email address provided. There were no revisions being applied to any of the pages in question, so I don't think that is the issue. Just FYI, this started after having updated the production site to Neo 3.7.12 from 3.7.9. However, I replaced the database on the production site with a backup that did not have the problems and the issue resurfaced after a few minutes even though no edits were being made on the site. I then restored the backup again and tried upgrading to 3.8.0 and the same thing happened. I then restored the database again and tried rolling back to 3.7.9 and it happened again, so as of now the site cannot display content, as each time I restore a database backup it breaks again shortly thereafter.

@brianrivet-tilt
Copy link
Author

I just wanted to check on the stats of this. This issue is causing the site to go down intermittently. I keep restoring the database backup and that restores it temporarily, but the problem keeps coming back.

@ttempleton
Copy link
Contributor

Thanks on sending the files for this. I see this project has Preparse Field installed, which is incompatible with Neo due to various issues it causes with Neo, including one other known case of loss of block structure data. I'm assuming Preparse Field is causing your issue as well, so I recommended that you disable or remove it. Please let me know if that turns out not to resolve it, though.

@ttempleton ttempleton closed this as not planned Won't fix, can't repro, duplicate, stale Jul 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants