Check out the SMF Function DB!
Started by Compuart, September 20, 2005, 10:41:57 AM
Quote from: Grudge on December 18, 2005, 06:38:33 AMI would not say SMF has an unorthodox use of function recursion at all. It's used rarely, but appropriately. Due the way SMF approaches security all incoming variables are cleaned ($_POST, $_GET and server vars). The *only* way to do this properly is through function recursion. It will never get more than a couple of layers deep, and I would very much consider it a bug in PHP, IIS or otherwise if it cannot handle the very small amount of recursion SMF uses.This is the first time I've ever heard of this problem, and it sounds very much like a bug in the build you are using. Everything in the SMF code is perfectly legal. Bear in mind that I believe Ben runs an accelerator (eAccelerator) with SMF without issue. Also, at the very least vBulletin also uses recursion so if it is a bug with PHP it needs fixing.
QuoteIt is possible to call recursive functions in PHP. However avoid recursive function/method calls with over 100-200 recursion levels as it can smash the stack and cause a termination of the current script.
Quote from: Grudge on December 18, 2005, 06:06:50 PMBonk,You have to bear in mind that I do not have the time to read through every post in every topic. Nor do I have the time to read the PHP manual from cover to cover. If accelerators have not been updated for the latest version of PHP this is not my concern. The only thing that I care about is that SMF is written to work on all valid (and even not so valid) server configurations - and is optimised for the current issue of software.As I've already stated, SMF does not use several hundred levels of recusion - it uses it as appropriate for the functionality. I'd be in full agreement that if a function is recursing hundreds of times there is something seriously wrong.As far as preg_* on windows not working well goes - that's very much a platform issue. preg_ functions are used in SMf for very good reason, writing a custom regex function in PHP would clearly be slower.I'm more than happy to work with people to make SMF work on their current server configuration, but only if it's vaguely sensible. Forgive me if I'm wrong (As I've said - I don't have time to dedicate to every topic) - you are trying to run SMF 1.1 on PHP 5.1.1 with an accelerator that doesn't work on 5.1.1 - I can't see how you can blame SMF for not working in this situation.I believe that you are basically in agreement with me (i.e. ISAPI plain doesn't work caching PHP 5.1.1) - but if this is the case then I don't see why you decided to write a ranting post about it in the first instance, without ensuring that it was, indeed, a problem with SMF.Regards,GrudgePS - I've had 5 pints and a bottle of wine so forgive any incohersion
Quote from: JayBachatero on December 14, 2005, 11:52:27 AMQuote from: klumy on December 14, 2005, 11:48:30 AMWhat's new in RC2?Wait and see Quote from: Severus Snape on December 14, 2005, 11:50:03 AMI figured out one, in your posts there is like a small picture thing of a piece of paper and a pen going in it, click on it and your post comes up like a quick post for editing.Yup thats one inline editing.
Quote from: klumy on December 14, 2005, 11:48:30 AMWhat's new in RC2?
Quote from: Severus Snape on December 14, 2005, 11:50:03 AMI figured out one, in your posts there is like a small picture thing of a piece of paper and a pen going in it, click on it and your post comes up like a quick post for editing.
QuoteDatabase ErrorPlease try again. If you come back to this error screen, report the error to an administrator.
Quote from: Yuri on December 21, 2005, 10:24:52 AMQuoteDatabase ErrorPlease try again. If you come back to this error screen, report the error to an administrator.I've overwritten all (1.0.5 -> 1.1).... I don't know what happen?
ALTER TABLE smf_boardsORDER BY boardOrder
Quote from: Grudge on December 27, 2005, 06:03:55 PMThe package manager can only be used for minor updates I'm afraid. That said, I hope the next version of SMF will make it all possible via the Package Manager.