I have set up forums and all works right as administrator but I get an error posting as a regular user. But, not the possibly expected permission error.

EntityStorageException: SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column 'sticky' at row 1 in NodeStorageController->save() (line 304 of /home/gt4us/gt4us.com/core/modules/node/node.entity.inc).
SEVERITY   

There is no ability for an ordinary user to set "sticky" so it just looks like it is not initialized in the code.

Comments

OK, lacking an answer I held my nose (I'm a Python guy) and looked around. While I am not sure how sticky ends up not set, this seems to have solved the problem.

486,489d485
<         // FYL make sure sticky is 1 or 0
<         if ($entity->sticky != 1) {
<           $entity->sticky = 0;
<         }

 

 

drop's picture

Hi @felipegt and welcome to the forum!  I'm sorry you weren't able to get an answer quickly, but happy that you were able to figure something out (even if it was a little smelly in that code!)

Something that might help you get your answer a little quicker next time would be to a little bit more detailed in your question. For example, you said "I have set up forums". What does that mean? Have you created a custom content type with taxonomy, like we did on this site, or have you installed the forum module? Or, have you set up something else like integration with BBForum?

Can you reproduce the same error when creating other content, for example, a page, or a post? If not, the problem is likely with the code that provided the Forum type, and not actually in node.entity.inc.

I guess I have been a geek too long. My response was as short as I thought defined the issue. That is, only a forum issue, using the forum module (as that should be the way to do forums) and the field (sticky) was only in the forum module as far as I know.

The fix is working but clearly there is an error earlier on in processing a forum post. Just in case someone likes to play with PHP.

drop's picture

I guess I have been a geek too long

No, that's not possible ;)

That is, only a forum issue, using the forum module

If you know that the error you are getting is caused by a specific module, then the ideal place for your inquiry would be in the Forum module's issue queue, as that's where the maintainer of that module will be able to help you find the cause of the error, and help you fix it!

and the field (sticky) was only in the forum module

The sticky checkbox is a core feature that is available on any content type! A site architect does have the option to hide the sticky checkbox if they like, which is why you won't see it (by default) when creating a Page, but the option is there on a Post (by default).