Current time: 05-24-2012, 11:44 AM Hello There, Guest! (LoginRegister)


 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[F] Duplicate settings issue
09-21-2008, 08:06 PM
Post: #1
[F] Duplicate settings issue
This conditional was drove from various other problems, but mainly caused by Fix #3644 which was included in the 1.4.2 update.

Quote:During the upgrade of a board using pgsql you get the following error:
Quote:Fatal error: [SQL] [0] ERROR: invalid input syntax for integer: "yes"
SELECT name,sid FROM mybb_settings WHERE isdefault='1' OR isdefault='yes' in /var/www/testforum.blubotter.org/htdocs/moepforum/inc/db_pgsql.php on line 552
The query can be found in the file upgrade.php in the lines 717 and 723.

Possible fix: Replace
PHP Code:
        $query $db->simple_select("settings""name,sid""isdefault='1' OR isdefault='yes'");
        while(
$setting $db->fetch_array($query))
        {
            
$settings[$setting['sid']] = $setting['name'];
        }

        
$query $db->simple_select("settinggroups""name,title,gid""isdefault='1' OR isdefault='yes'"); 
with:
PHP Code:
if($db->type == "mysql" || $db->type == "mysqli")
        {
            
$wheresettings "isdefault='1' OR isdefault='yes'";
        }
        else
        {
            
$wheresettings "isdefault='1'";
        }
        
$query $db->simple_select("settings""name,sid"$wheresettings);
        while(
$setting $db->fetch_array($query))
        {
            
$settings[$setting['sid']] = $setting['name'];
        }

        
$query $db->simple_select("settinggroups""name,title,gid"$wheresettings); 

$db->type is not initialized in upgrade.php because $db->type is initialized in inc/init.php throughout the rest of MyBB except install/upgrade.php and install/index.php because they don't initialize inc/init.php. This in turn caused there "where" condition to always be "isdefault='1'".

This issue only affects those who are upgrading from 1.2.x -> 1.4.2. Anyone else who is having the issue experienced a separate bug caused in 1.4.1 but was fixed in 1.4.2. The fix simply stops that particular issue from happening again on a future upgrade. It doesn't automatically repair the previous issues caused by it because there is no easy way to do so.

The fix is to set $db->type in install/upgrade.php and inc/init.php.
Visit this user's website Find all posts by this user
09-21-2008, 08:06 PM
Post: #2
[F] Duplicate settings issue
Thank you for your bug report.

This bug has been fixed in our internal code repository. Please note that the problem will not be fixed here until these forums are updated.

With regards,
MyBB Group
Visit this user's website Find all posts by this user
09-21-2008, 08:18 PM
Post: #3
RE: [F] Duplicate settings issue
This user has been denied support. This user has been denied support.
Glad you found the reason for this. Curious if you updated the upgrade package?

New MyBB plugin is "My Awards 2.0".
[Image: 468x60_SF.gif]
Visit this user's website Find all posts by this user
09-21-2008, 08:21 PM
Post: #4
RE: [F] Duplicate settings issue
I have updated the MyBB Download package and the upgrade package with this fix. Please note that applying the fix will not remove your duplicate settings. The fix will only stop the problem from happening again.

(09-21-2008 08:18 PM)labrocca Wrote:  Glad you found the reason for this. Curious if you updated the upgrade package?

Give me a few seconds >.>
Visit this user's website Find all posts by this user


Forum Jump:


User(s) browsing this thread: 1 Guest(s)

Contact Us | MyBB | Return to Top | Return to Content | Lite (Archive) Mode | RSS Syndication