Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe Ostern!

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Fatal error: Allowed memory size exhausted
#11
Möglicherweise hilft es den Cache auf Datei-basiert umzustellen. Dazu in der inc/config.php in der Zeile:
PHP-Code:
$config['cachestore'] = "db"
"db" durch "files" ersetzen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#12
Dann bekomme ich folgende Fehler:

Zitat:Warning [2] is_writable() [function.is-writable]: !open_basedir restriction in effect. File(/home/www/cwcity/hosting/g/y/gypsydeath/htdocs/cache) is not within the allowed path(s): (� �1��E�) - Line: 70 - File: inc/cachehandlers/disk.php PHP 5.3.27 (Linux)

und:

Zitat:MyBB has experienced an internal error and cannot continue.

Error Type:
MyBB Error (45)
Error Message:
The data cache directory (cache/) needs to exist and be writable by the web server. Change its permissions so that it is writable (777 on Unix based servers).

Der cache-Ordner sowie alle Dateien da drin haben die Rechte 777.
Okay.. ich glaube, ich beseitige das Problem gerade, indem ich alle Forenberechtigungen nochmal überarbeite, damit verschwand nun nach nur einem geringen Teil des Forums die Fehlermeldung Smile

Meine Frage nun.. mit welcher MySQL-Abfrage kann ich das Ganze direkt für alle Foren eines bestimmten Forums ausführen, damit ich mich nun nicht dumm und dämlich klicke?
Edit: Um mich deutlicher auszudrücken.. Rolleyes
Wie kann ich die eigenen Berechtigungen aus einzelnen Foren für alle darin liegenden Foren zurücksetzen?

.. Wenn man es überhaupt kann.
Ich bin ja schon froh, habe ich die Fehlermeldung beseitigt.
#13
(30.08.2013, 18:58)melancholia schrieb: Meine Frage nun.. mit welcher MySQL-Abfrage kann ich das Ganze direkt für alle Foren eines bestimmten Forums ausführen, damit ich mich nun nicht dumm und dämlich klicke?
Ich denke, das ist auch direkt über die Datenbank mühsam, weil Du zunächst für jedes (einzelne) Forum die gewünschten Einstellungen festlegen muss. Danach kannst Du jeweils ein MySQL-Query pro fid ausführen. Entsprechende Hinweise kannst Du diesem Thema entnehmen.
viele Grüße
Jockl
übersetzte und eigene Plugins
#14
Ich hab mich mal umgesehen in der Datenbank und ich denke, ich mache es manuell.. da weiss ich, was ich tue und so wie es aussieht ist es wirklich ähnlich mühsam.

Jedenfalls möchte ich mich bei alle bedanken, die mir versucht haben zu helfen Smile
.. auch wenn ich am Ende mal wieder komplizierter gedacht hab als nötig und nun eine Heidenarbeit hab, aber es läuft wieder.
#15
Exakt auf genau den gleichen Fehler bin ich heute leider auch gestoßen als ich neue Foren angelegt habe. Ist es möglich, daß dadurch, daß zwei Personen gerade in der Forenverwaltung dabei waren, Foren zu erstellen, irgend etwas zu Schaden gekommen ist?

Wenn ich jetzt Berechtigungen bearbeiten will, bekomme ich überall
Zitat:Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 6995573 bytes) in .../inc/db_mysql.php on line 861

Und den gleichen Fehler auch bei dem Erstellen weiterer Foren, auch wenn diese trotzdem angelegt werden.

Hilft es denn, die Berechtigungen sämtlicher Foren noch einmal abzuspeichern, wie von melancholia ausprobiert?
#16
Am einfachsten wäre es das Memory-Limit zu erhöhen...
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#17
Jaa, das kann halt nur der Provider - und der wird sicherlich wissen wollen, weshalb ich denn so viel Speicher brauche, wenn es doch nur ein einfaches Forensystem ist... und eigentlich hat er damit natürlich vollkommen recht. Smile

Also, in Zeile 861 geht es darum, einen string kompatibel zu formatieren:

Code:
$string = mysql_real_escape_string($string, $this->read_link);

In Funktion:

Code:
    function escape_string($string)
{
if($this->db_encoding == 'utf8')
{
$string = validate_utf8_string($string, false);
}
elseif($this->db_encoding == 'utf8mb4')
{
$string = validate_utf8_string($string);
}

if(function_exists("mysql_real_escape_string") && $this->read_link)
{
$string = mysql_real_escape_string($string, $this->read_link);
}
else
{
$string = addslashes($string);
}
return $string;
}

Wenn das der letzte Punkt ist, bevor das Skript ausgestiegen ist, handelt es sich eventuell um eine Art Endlosschleife wegen $irgendwas? Wäre natürlich interessant zu wissen, wo er denn vorher gewesen ist (irgendwo im forum-management ADD oder EDIT eben...).

Ich würde schätzen, das letzte, was er da jeweils tut ist, Berechtigungen wegzuschreiben? Was genau macht er da und macht er das in einer Schleife?
#18
Du kannst dir lange irgendwelche Code-Zeilen anschauen, aber wo der viele Speicher gebraucht wird, sagt die Fehlermeldung gar nicht aus. Das müsste man genauer analysieren, wozu mir allerdings gerade die Zeit fehlt.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#19
Das mußt Du ja gar nicht, ich bin doch froh, wenn ich einfach ein paar Hints bekomme, die mich wieder ein Stück weiterbringen. Falls eben solche in den Sinn kommen sollten. Smile

Ich hab mal weiter analysiert. Ich glaube, das Problem liegt daran, daß der forumspermissions-cache eine Größe von 3,16 MB beträgt. Der kann nämlich als einziger nicht im ACP Cache-Manager erneuert werden (keine Rückmeldung und beim Ansehen des Caches bekannte Fehlermeldung) und das erscheint mir schon ganz schön groß.

Ist das eine normale Größe? Oder ist da was komplett verkehrt? Alle anderen liegen so im Byte/KB Bereich.
#20
Okay. Ich habe jetzt
(- von 1.6.12 auf 1.6.13 upgegraded)
- den Cache in der Datenbank manuell auf leer gesetzt:
Code:
update `mybb_datacache`
set `cache` = 'a:0:{}' where `title` = 'forumpermissions'
- alle Forenberechtigungen außer bestimmten Gruppen gelöscht:
Code:
delete from mybb_forumpermissions where gid NOT in (4,6,3)
- einen index auf gid angelegt
- den cache "forumpermissions" im Cache-Manager nun erfolgreich erneuern können

Und nun funktioniert es wieder. Ich weiß nicht so wirklich, weshalb dem System 1038 Forenpermissioneinträge in der Tabelle zu viele waren, aber ganz offensichtich ist dem so. Ich werde die Berechtigungen nun beim Neuanlegen wohl sehr sparsam planen müssen.


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Fatal error: Call to undefined method captcha Astrofan 4 2.052 29.07.2014, 09:23
Letzter Beitrag: Flobo x3
  Your post contains too many videos. Max. videos allowed: 1 forenschreck 2 1.220 25.06.2013, 12:06
Letzter Beitrag: forenschreck
  Email Fehler - 550 You are not allowed to use the domain web.de as a sender domain. ps915 9 4.581 09.03.2013, 11:32
Letzter Beitrag: capsicum
  Memory Usage: sehr hoch Rally 10 2.845 18.12.2012, 00:07
Letzter Beitrag: Rally
  Fatal Error bei der Installation alexa 9 3.157 14.05.2011, 09:47
Letzter Beitrag: alexa