With the reference to http://community.invisionpower.com/resources/bugs.html/_/ip-board/curl-does-not-work-behind-proxy-r38982 I would like to suggest to add an option that makes it possible for IPB to work behind proxy.
Currently I have manually edited a few files that make external requests to add CURLOPT_PROXY parameter to allow that.
The same request applies to IP.Chat and other products that also have external calls.
This suggestion was inspired by http://community.inv...s-to-beginning/ which, in my personal opinion, is a real issue and has the same implications all over the board. You may want to consider this for future versions.
For example, on member profile page, when you switch between tabs, you lose your history and "backing" will take you to wherever you came from. I understand this is done to avoid extra page loads, but for all the modern browsers (except IE9), which is now ~50% of users and probably 100% of admin interface users, this can be easily fixed by using HTML5 history API. Added benefit is that you can copy your url and send a direct link to somone else (I know you can still do it by right clicking tab and copying target url, but this does not seem like a very useful option).
It is best described at https://github.com/b...the-tree-slider and basically allows you to change url history while keeping your AJAX calls. Sorry, this is probably not news to you, but I just wanted to show a simple proof of concept for member profiles page which you can see here - http://www.disput.az....php?showuser=1
If you click on tabs, you will see that urls change without page refresh, and "back" takes you back to the previous tab (although with extra refresh at the moment)
I have simply added couple of lines to changeTabContent method, to register URL change and stubbed "backing" function by reloading the page on proper URL. Obviously, "backing" could and should also be intercepted and loaded via AJAX, but I really wanted to keep my changes to a few lines.
While this may technically not be a bug, it is indeed an issue for quite a lot of users. Apparently, most people don't remember their password after a few months and have problems logging in. I don't like retyping my password too, so I am forced to ctrl+click and a get a new tab if I wan't to log in. This is, as a minimum, a usability issue. Just wanted to add my 2 cents :)
I use 8.3. Full-text is not based on tsearch2, since I use sphinx. I have done some work originally on using tsearch2 and it is not hard to add, but ended up using sphinx since it is much better optimized for quick searching than any other solutions.
I have actually migrated my board to postgresql 2 days ago. While I still have a number of issues, most of them are not directly related to the driver, and by and large migration was successful. I still have a handful of open bug reports with IPB though )
I will be setting up a plain new board on my new website some time this week, that will be running postgresql, which wouldn't have any migration issues and could serve as a first running example of a fresh postgresql installation.
Honestly, I did not have any plans to sell it (not sure if I am allowed to at all), but rather release this for community :) may be i should have :D
OK, thanks to a good abstraction layer in 3.x I have managed to set my board up and running on alpha-version of the driver. All the basic functionality, like posting, PMing, reading, subscribing etc. works fine now. More work needed now on the custom stuff like reports.
I will send an invite to join, to those who expressed interest on this topic, but if there is anybody else who wants to contribute, please let me know here or via PM.
It was actually planned to be so, but after I have decided not to upgrade to 3.x in the nearest future (waaaay to much work), I wasn't able to commit my time on that... not sure about others who expressed initial intereset. I hope this will be made available at some stage, otherwise I will have to do it one day myself again ))
bfarber, do you think it may be a chicken and egg problem? :-) may be once you have drivers available publicly demand for it will appear... may be I am wrong though.
Anyway, I think it would be useful to you if the code outside of driver is mysql-independent (which it is not 100% now). Having drivers that are maintained even by community would significantly help achieving that. With the way you have abstracted your code it is not such a big effort anyway.
I was hoping to see some interest here, but I can now see why IPS stopped supporting PostgreSQL - almost no demand.
I had to make a number of tweaks to the code to make it efficient and fix mysql-specific queries and remove reliance on mysql gotchas. However, most of the functionality is covered by the driver, which was provided to me by IPS in beta-form and which I also had to update to make it work, since it was quite an early beta.
I am willing to share the drivers, but this is not the only change needed which makes it a bit more complicated. I hope IPB3.0 code will be cleaner and it would be possible to only change the driver, so, yes, once source code for 3.0 is available, I will start working on PostgreSQL drivers.
I currently have some ~4.5M posts, ~50K users and ~1000-1500 concurrent sessions depending on time of the day and have been experiencing significant performance problems with using MySQL on my forums.
Most if not all of the performance problems were caused by long queries that would lock table updates that in turn will lock all the subsequent selects. This is a known problem with table level locking in mysql. I have moved search to Sphinx, but this only addressed some of the problems.
One of the recommended ways on forums was to use InnoDB to avoid table locks, but it has got its own issues and also, you cannot do a hotbackup with free open source tools (you can backup from replication, but this is not the best choice in all scenarios). Another proposed solution was to redirect all long queries to replication slave, but this looked ugly to me.
So, I have decided to use beta-posgresql drivers from IPB 2.x to try to migrate to PostgreSQL. I have submitted a number of driver patches to IPS, made a number of modifications to the code, added few new indexes to tables, managed to complete a database conversion without losing any data, but after all I am now a happy user running IPB 2.x on PostgreSQL 8.3.
So far, so good. No more locks, no more long running queries. I still have some glitches to fix, mainly due to IPB code relying on some Mysql gotchas like implicit conversion of chars to integer etc., but by and large this was a successful upgrade, and this topic is to share the success and may be convince IPS to keep their work on PostgreSQL drivers :)
I was also wondering if anybody else has managed to migrate to PostgreSQL as well?