@Bleistivt Thanks for the suggestion, but PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE is a SQL Server specific constant -- it isn't defined in the PHP build on my webhost.
You have completely lost me ther but I will keep following this thread in case a fix is found. I think this is the niceset forum software I have found but not usable with this bug
I suggest you check if your installation is using mysqlnd as its PDO MySQL driver -- if it is not, your problem is likely to be the same as mine, but if it is, it's definitely something different.
To check, create a single-line PHP file, containing just the following:
<?php phpinfo();
Upload this file to your forum directory and run it. In the resulting web page, search for the PDO Driver for MySQL section. If the Client API version is anything other than mysqlnd, the workarounds I described above will likely fix your problem too.
I have had my service provider check and they state that whilst MySQLnd is present it is not used. Rather the connection is done with the default mysql client library.
I have had my service provider check and they state that whilst MySQLnd is present it is not used. Rather the connection is done with the default mysql client library.
In that case the workaround I described above (in CategoryModel->incrementLastDiscussion() and CategoryModel->updateLastPost() (in file /applications/vanilla/models/class.categorymodel.php) should fix it for you.
Unfortunately these are not overridable functions, so you'll have to edit the core file and reapply the fix each time you upgrade (until a permanent fix is made to the core files).
This has the advantage of only needing to reapply the change in one place on an upgarde, instead of at least three places. In theory it breaks other things if any category has an entirely numeric slug, but that won't be true in my forum (would it be anywhere?).
Does anyone have a fix for this yet? I tried one of @rgp above but didnt work. Its the counts on my front Category view that arent updaing. The last poster is though. Any help would be great as this is a pretty annoying bug.
It's in CategoryCollection->get() (not CategoryModel), so in file class.categorycollection.php (approx line 165 in v2.6 -- I haven't yet upgraded to v2.8).
Comments
The solution to the 'most recent' not updating was to add the same code to
CategoryModel->updateLastPost()
.It looks like my web host isn't using
mysqlnd
as the PDO MySQL driver :-)Obviously specific to my webhost, but might possibly account for some of the other folk's problems with this issue, too?
@rgp Try adding this to your configuration:
My themes: pure | minusbaseline - My plugins: CSSedit | HTMLedit | InfiniteScroll | BirthdayModule | [all] - PM me about customizations
VanillaSkins.com - Plugins, Themes and Graphics for Vanillaforums OS
@Bleistivt Thanks for the suggestion, but
PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE
is a SQL Server specific constant -- it isn't defined in the PHP build on my webhost.Given the reliance on mysqlnd, though it's not listed as a requirement, I've raised an issue for this:
https://github.com/vanilla/vanilla/issues/7770
You have completely lost me ther but I will keep following this thread in case a fix is found. I think this is the niceset forum software I have found but not usable with this bug
Hi @teppsta.
I suggest you check if your installation is using mysqlnd as its PDO MySQL driver -- if it is not, your problem is likely to be the same as mine, but if it is, it's definitely something different.
To check, create a single-line PHP file, containing just the following:
Upload this file to your forum directory and run it. In the resulting web page, search for the PDO Driver for MySQL section. If the Client API version is anything other than mysqlnd, the workarounds I described above will likely fix your problem too.
Yes having the same issue 2.6.1 categories not showing post counts or comment counts
Thanks RGP !
I have had my service provider check and they state that whilst MySQLnd is present it is not used. Rather the connection is done with the default mysql client library.
They created a script which you can see at :
http://teppett.com/Vanilla/i.php
I hope this may lead to a simple solution !
Many thanks
Simon
In that case the workaround I described above (in
CategoryModel->incrementLastDiscussion()
andCategoryModel->updateLastPost()
(in file/applications/vanilla/models/class.categorymodel.php
) should fix it for you.Unfortunately these are not overridable functions, so you'll have to edit the core file and reapply the fix each time you upgrade (until a permanent fix is made to the core files).
Richard.
I found at least one other place where this is a problem, decrementing the count when deleting a discussion.
So I decided to remove my existing fixes, and instead alter
CategoryModel->get()
to check the id foris_numeric()
instead ofis_int()
:This has the advantage of only needing to reapply the change in one place on an upgarde, instead of at least three places. In theory it breaks other things if any category has an entirely numeric slug, but that won't be true in my forum (would it be anywhere?).
Does anyone have a fix for this yet? I tried one of @rgp above but didnt work. Its the counts on my front Category view that arent updaing. The last poster is though. Any help would be great as this is a pretty annoying bug.
Hi @Chrismawa
As I said in an earlier post, before editing any code the first thing to check if your installation is using mysqlnd as its PDO MySQL driver.
Richard.
Hi @rgp
My phpinfo is here: http://cs19.co.uk/info.php
Mysqlnd is listed on there but its not in the PDO drivers section. Does this mean its installed but being used?
Yes, the PDO Driver for MySQL section shows that your PDO installation is not using mysqlnd.
I suggest you try the last fix I suggested above, which is working for me:
Alter
CategoryModel->get()
to check the id foris_numeric()
instead ofis_int()
:Richard.
Thanks Richard, excuse my poor knowledge of Vanilla but where is that line located? Inside class.categorymodel.php? As I can't seem to locate it.
Whoops, sorry that's my mistake.
It's in CategoryCollection->get() (not CategoryModel), so in file class.categorycollection.php (approx line 165 in v2.6 -- I haven't yet upgraded to v2.8).
Sorry again ...
Thanks mate, it seems to be a partial fix. My post count is now updating just not the Thread count. Thanks for your help.
Actually it has fixed both counts! Thanks @rgp !!
You're welcome :-)