Unable to fill custom user field with email/url as match requirements

Arkshine

Active member
Hi,

Here the problem : If I try to fill a custom user field, like Windows Live which has an email match requirement, I get an internal server error.

- I have the latest XF version.
- There is not entry in the Server Log Error.
- Tried to disable all my addons.
- It seems to happen with URL match requirement too.
- PHP Version 5.4.4-2 (but can't change that)
- Apache 2.4.2 (unix)


EDIT:
- In Apache log, I have such error :
[:error] [pid 8835:tid 2817188046592] (104)Connection reset by peer: [client myIP: Port] FastCGI: failed to read from backend server
- In Php log :
WARNING: [pool www] child 8961 exited on signal 11 (SIGSEGV) after 0.082670 seconds from start


Here a screenshot :

Iyn2s.png


and the error in the console :

BXXVo.png


Any ideas ?
 
ISE 500 is a generic server error. Ideally the logs will contain more information. The console message doesn't help. And the Apache log you posted is also not specific. I suggest you consult with your host to examine other logs on the server (which may require root access).

I am guessing your web server has an overly restrictive rule in place that doesn't like something about this particular request. For example, I have seen servers that reject any requests with form fields containing "http://" (you mentioned the "URL match requirement").
 
Well, will ask my host about this matter. Thanks.

Just to be sure, I've tried to make a new forum (so no addons, all config by default), and the problem is still here. Is it possible there is an incompatibility with XF with php-5.4 ?
Before it was using php-5.3 and It was working fine. It happens since I've updated it (automatic).
 
My host said me basically they confirm there is a PHP bug on the executed code and I should ask here if it's a known bug or not...

So, someone can confirm there is php-5.4 issue ?
 
After asking them, it seems not.
They said me to try to get more informations by enabling E_ALL, but knowing the executed code makes a segfault on the PHP processus won't most likely help.

Tried to put in config.php (is it correct and the right place?) :
error_reporting(E_ALL);
ini_set('display_errors', true);

But I get no new informations.

Should I post in the bug section ? Can someone test, confirm and eventually giving a fix ?
 
but knowing the executed code makes a segfault on the PHP processus won't most likely help.

Ok that is some new information. A segfault in PHP would have to be a problem in PHP itself such as a misbehaving extension. Strictly speaking, a PHP application like XenForo cannot cause a segfault. PHP itself handles the memory management. If XenForo were to exceed the memory_limit in PHP then you would get this error:

Allowed memory size of X bytes exhausted

But a segfault is something higher.

Are you running suhosin, eAccelerator, or zend optimizer? Those are some of the more troublesome extensions in my experience. For the purpose of troubleshooting I suggest temporarily disabling any "excess" extensions like caches, accelerators, optimizers, hardeners, etc.
 
The forum is hosted on the cloud, and there are Varnish and APC behind. I don't think I can't disable them, it's an instance provided as it is where I can't do nothing.
Tried to disable cache in the XF config.php, but it changes nothing.

It was working well before with php-5.3. :mad:

What should I do ? Do you want to see my phphinfo ? Are you absolutely sure it can't be a compatibility issue ?
 
So, unless my host updates the PHP version to a working version, XF won't work properly ? Since they update recently to php-5.4 and that's not possible to ask a specific version ; I'm stucked with this issue. :(
Well, will report to them what you said me and we will see what happens. Thanks anyway.
 
Could you show me the code involved on this issue ? I would like to search more on the matter and maybe filing a bug report to PHP.

I don't know what XF code is involved. But for a segfault it's not relevant. You need to understand the concept of a segfault. Examining XenForo to address a segfault in PHP is like examining the driver of a car to fix a problem with the car.
 
I mean, we know it happens when we try to validate some content in a field where email/url match requirement is enabled. I wanted to know this code. I'm not going to debug it, no idea how to do it, but I thought by knowing the code involved, I could search if the issue exist or not.
 
I mean, we know it happens when we try to validate some content in a field where email/url match requirement is enabled. I wanted to know this code. I'm not going to debug it, no idea how to do it, but I thought by knowing the code involved, I could search if the issue exist or not.

It could be a faulty PCRE library in PHP. That library is used for pattern matching like the URL match.
 
Well, it works now but it's quite strange what happens here. Let me explain.

After reading a thread here where APC is bad if you cache sessions (fragmentation, slower etc.) ; I've disabled caching, then clearing APC opcode cache, and after some hours, I've came back to check my forum and noticed it was surprisely faster than usual. Checking at the APC panel, for sure there are not much fragmentations. Then I had an impulsion by checking again if the error was still here and.. magic.. it works. :eek:

Would it possible that caching sessions ****ed up APC at some point which ****ed up PCRE extension ? :p

Tried to cache sessions again, and it still working, but I don't have much fragmentations for now. So, not sure what happens here.
I've also tried to check URL and E-mail requirement, and both work.

Though, even it's working, there is still a weird issue with Email requirement : if I try to fill, let's say, Windows Live field, with just random text like "blabla" and I click somewhere, instead of having the message saying the format is not correct (I'm talking the red hovering thing at right), I get instead "The field 'custom_field_msn' was not recognised." for example. But I can still validate and it's still saved... EDIT: Actually an addon might be the cause, because tried on a clean forum, and it doesn't happen.

I don't think my host has done something. Last email from them where to say basically they can do nothing because of a PHP bug and I should search/report about this issue.

Do you have an explanation ? APC issue ? :D
 
Top Bottom