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
[Bug]: setUserModification in SimpleBackendSearchBundle does not accept null values #16965
Comments
@gfemorris I created a PR #16970 |
@blankse thx. That should fix the search case. The issue with the object folder is still open though. Should i create a new issue for that so we can close this one? |
@gfemorris I can't reproduce this. In my setup the timestamps are set: How can this values null? |
@blankse The browser sends null if there is no userModification set |
@gfemorris Thank you. |
Hi @blankse @gfemorris
Because in your example you are mentioning only userModification. Thank you. |
The db columns are nullable. So it is possible. Maybe not via admin interface. But via php script. |
@blankse if we change the setters to accept the null values then yes, these fields will be null-able via script. However, then this means we have empty data in the DB. I will discuss with my colleagues this topic, for me the better solution would be to either assign system user when this happens and introduce some mechanism to assign system user on deleting of existing users. |
@lukmzig The null value could be exists from a earlier pimcore version without this type hints (Pimcore < 11) or someone set it directly in the db table via sql. So if you decide to make it not nullable, the db schema should be changed and the data should be migrated. I think there should be a difference between system user and deleted user. The system user is for changes of pimcore itself (via maintenance cronjob for example). For the created and modified dates I don't know a reason to be empty. So there we could change the db shema to not nullable and default to current time when empty it is a problem for you. |
@blankse I agree with you, the DB schema should not change here. This issue with the folder is bit strange and we will need to have a deeper look @gfemorris can you please create a separate issue for the folder this? Thank you very much! |
@gfemorris @lukmzig I created a new issue: #17019 |
The SimpleBackenSearchBundle part was fixed by #16970 |
@lukmzig agreed. It's better to have a separate issue for this. Thx @blankse for creating the issue. |
Pimcore version
11.2.2
Steps to reproduce
If backend user gets deleted userModification and or userOwner is nulled in elements. The Backendsearch crashes if there is a null value in items.
Actual Behavior
This happens in Pimcore\Bundle\SimpleBackendSearchBundle\Model\Search\Backend\Data:setUserModification / setUserOwner which accepts only integer values.
Same happens with object folders when you try to save them.
In this case it happens in
Pimcore\Bundle\AdminBundle\Controller\Admin\DataObject\DataObjectController:saveFolderAction
when setValues is called. The null value of the userModification /userOwner is included and crashes in AbstractElement because it does not accept null values as well.
Expected Behavior
Method should accept null values as well or typecasting before setting it.
The text was updated successfully, but these errors were encountered: