Seite 2 von 2

Verfasst: 25.08.2005 08:02
von thompson
GrisuXX hat geschrieben:@thompson:
Aus diesem Grund hatte ich mich damals für die Automatische Lösung entschieden.
die habe ich doch auch. nur leider läuft die tabelle innerhalb von wenigen minuten wenn google kommt voll. momentan scheint er mich zu lieben.

nach dem einbau der ip begrenzung auf 10 läuft der server nun wieder besser. mal sehen ob heute die tabelle wieder vollläuft.

Verfasst: 25.08.2005 08:20
von GrisuXX
Jep genau das war damals auch mein Grund diesen Mod zu installieren.
Irgendwann hat Google jeden Mal lieb. :lol:

Ich kenne mich mit der Datenbank nicht so gut aus.
Kann es sein, dass die MAX_ROWS Serverseitig begrenzt werden auf <2500?
Der Mod würde die MAX_ROWS also gar nicht auf 2500 setzen können.

Daher noch mal die Frage: Wie kann man derzeitige Anzahl MAX_ROWS abfragen?

Verfasst: 14.09.2005 18:48
von thompson
ich hätte da noch eine frage zum code:

Code: Alles auswählen

  $sql = "SELECT COUNT(*) as numrows FROM ". SESSIONS_TABLE ." WHERE session_ip = '$user_ip'"; 
        $result = $db->sql_query($sql); 
        if ( !$result ) 
        { 
            message_die(CRITICAL_ERROR, 'Error checking existing sessions', '', __LINE__, __FILE__, $sql); 
        } 
        
        $numrows = $db->sql_fetchrow($result); 
        if($numrows['numrows'] > 4) 
        { 
            $delete_limit = $numrows['numrows'] - 4; 
            switch( SQL_LAYER ) 
            { 
                case 'mysql4': 
                    $sql = "DELETE FROM ". SESSIONS_TABLE ." WHERE session_ip = '$user_ip' ORDER BY session_start ASC LIMIT $delete_limit"; 
                    break; 
                default: 
                    $sql = "SELECT session_start FROM ". SESSIONS_TABLE ." WHERE session_ip = '$user_ip' ORDER BY session_start DESC LIMIT 4"; 
                    $result = $db->sql_query($sql); 
                    
                    if ( !$db->sql_query($sql) ) 
                    { 
                        message_die(CRITICAL_ERROR, 'Error select session data', '', __LINE__, __FILE__, $sql); 
                    } 
                    
                    $session_rows = $db->sql_fetchrowset($result); 
                    
                    $sql = "DELETE FROM ". SESSIONS_TABLE ." WHERE session_ip = '$user_ip' AND session_start < ".$session_rows[3]['session_start']; 
            } 
                    
            if ( !$db->sql_query($sql) ) 
            { 
                message_die(CRITICAL_ERROR, 'Error deleting old sessions', '', __LINE__, __FILE__, $sql); 
            } 
        }
welche zahlen muss ich genau abändern, dass die session sagen wir auf 15 beschränkt wird ?

danke.

Verfasst: 15.09.2005 16:58
von thompson
weiß das niemand genau ?

hat dies evtl. auswirkungen auf die performance des gesamten forums bzw. der datenbank ?

Re: session table voll

Verfasst: 09.07.2007 04:39
von MyLord
thompson hat geschrieben:ich habe das problem, dass seit ein paar tagen immer wieder die sessions table voll ist und obwohl ich alle änderungen aus der knowledge base bereits seit monaten eingebaut habe, wird die tabelle nicht mehr automatisch geleert.
Genau das selbe problem habe ich seit gestern. Die sessions tabelle läuft voll und wird nicht mehr automatisch geleert.
  • Wie kann man das Problem lösen?

Verfasst: 11.07.2007 04:32
von MyLord
[ externes Bild ]

Bei 913 Zeilen ist die Tabelle wieder voll. Sollten es nicht 2500 sein? :-?

Verfasst: 27.07.2007 16:43
von MyLord
Hat niemand eine Idee? :(