AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken "MySQL Server has gone away" bei Datensatzwechsel
Thema durchsuchen
Ansicht
Themen-Optionen

"MySQL Server has gone away" bei Datensatzwechsel

Ein Thema von Codehunter · begonnen am 11. Feb 2013 · letzter Beitrag vom 17. Feb 2013
Antwort Antwort
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.284 Beiträge
 
Delphi 12 Athens
 
#1

"MySQL Server has gone away" bei Datensatzwechsel

  Alt 11. Feb 2013, 08:19
Datenbank: MySQL • Version: 5.5 • Zugriff über: ZEOS 7.0.3
Moin!

Wenn ich mit einem TDBEdit einen Feldinhalt ändere und dann der Datensatz gewechselt wird ohne die Änderung per ApplyUpdates zu committen, dann rummst es mit der Fehlermeldung "MySQL Server has gone away". Diese Fehlermeldung/Exception kann ich insofern ignorieren, wenn ich gleich danach noch ein ApplyUpdates nachschiebe.

Jetzt ist die Frage: Ist das jetzt nur eine ziemlich unpassende Fehlermeldung seitens ZEOS, ist es ein Bug in ZEOS oder sollte ich generell vor einem Datensatzwechsel per ApplyUpdates/CancelUpdates entscheiden was mit Änderungen passieren soll?

Grüße
Cody
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
EgonHugeist

Registriert seit: 17. Sep 2011
187 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: "MySQL Server has gone away" bei Datensatzwechsel

  Alt 15. Feb 2013, 22:10
??? Du kannst du mal 'nen Schnipsel zusammenfummeln, um das nachvollziehen zu können? Welche Settings nutzt du hier?

Gruß Michael, ZeosDevTeam
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: "MySQL Server has gone away" bei Datensatzwechsel

  Alt 16. Feb 2013, 10:07
Ich kenn das Problem nur wenn man große Blobdateien übertragen will die größer sind als die Default-Einstellung von 1 MB.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
EgonHugeist

Registriert seit: 17. Sep 2011
187 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#4

AW: "MySQL Server has gone away" bei Datensatzwechsel

  Alt 16. Feb 2013, 10:18
Nun Bernhard, das sollte sich mit "SET GLOBAL max_allowed_packet=x" z.b. 16*1024*1024 lösen lassen. Zeos bietet hier auch die Option TZConnection.Properties.Values['Chunk_Size'] := xxx; 4096 Bytes default an, um die Pakete dem Network-Speed anzupassen. Macht jedoch nur Sinn, wenn man die TZDataSet.Options := [coPreferePrepared], setzt und somit auf die total buggy MySQL CAPI für PreparedStatments zu greift: http://dev.mysql.com/doc/refman/5.0/...-problems.html

Die haben es seit 4.x und bis heute nicht hinbekommen, das zu mal zu fixen. Außerdem existieren da Funktionen, wie mysql_stmt_param_metadata siehe http://dev.mysql.com/doc/refman/5.1/...-metadata.html die uuuuuunnnnendlich lang existieren, um dem CAPI Problem auf die Sprünge zu helfen, doch NIXXXXXXX da.. MySQL..

Doch ich denke bei CodeHunter läuft da was anderes schief und es wäre schön dem, im Gegensatz zu MySQL, nachkommen zu können.

Gruß Michael
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: "MySQL Server has gone away" bei Datensatzwechsel

  Alt 16. Feb 2013, 10:50
Nun Bernhard, das sollte sich mit "SET GLOBAL max_allowed_packet=x" z.b. 16*1024*1024 lösen lassen.
Weiß ich. Und genau ist es ja das der Blob + alles Drum herum (SQL-Statement + sonstiges) maximal dieser Grenze entsprechend dürfen. D.h. das Blob darf evtl. nur 900 kB groß sein bis es kracht.

Die haben es seit 4.x und bis heute nicht hinbekommen, das zu mal zu fixen. Außerdem existieren da Funktionen, wie mysql_stmt_param_metadata siehe http://dev.mysql.com/doc/refman/5.1/...-metadata.html die uuuuuunnnnendlich lang existieren, ...
Das ist ja geil
Aber warte - Wir hatten/haben in unserem DB-Modell auch ab und zu Systemfelder definiert die als "zur späteren" Verwendung schon mal angelegt waren aber nie verwendet wurden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
EgonHugeist

Registriert seit: 17. Sep 2011
187 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

AW: "MySQL Server has gone away" bei Datensatzwechsel

  Alt 16. Feb 2013, 11:10
Nun Bernhard, das sollte sich mit "SET GLOBAL max_allowed_packet=x" z.b. 16*1024*1024 lösen lassen.
Weiß ich. Und genau ist es ja das der Blob + alles Drum herum (SQL-Statement + sonstiges) maximal dieser Grenze entsprechend dürfen. D.h. das Blob darf evtl. nur 900 kB groß sein bis es kracht.

Die haben es seit 4.x und bis heute nicht hinbekommen, das zu mal zu fixen. Außerdem existieren da Funktionen, wie mysql_stmt_param_metadata siehe http://dev.mysql.com/doc/refman/5.1/...-metadata.html die uuuuuunnnnendlich lang existieren, ...
Das ist ja geil
Aber warte - Wir hatten/haben in unserem DB-Modell auch ab und zu Systemfelder definiert die als "zur späteren" Verwendung schon mal angelegt waren aber nie verwendet wurden.
Ja seh ich ein. Einziges Problem hier bei MySQL: Es gibt keine weitere Möglichkeit LOB's in Chunks zu senden. Die Größe derer hängt jedoch immer vom Networkspeed ab, um eine optimale Performance zu erreichen. MySQL bietet ja schon noch die Möglichkeit Strings für die PreparedStatements zu verwnden : http://dev.mysql.com/doc/refman/5.0/...tatements.html (fummle ich grade als Alternative bei Zeos rein), dann hat man aber keinen Einfluß mehr auf die Paketgrößen. Die vorher beschriebene "Option" echt nur wegen MySQL vorhanden, else -> Bugreports. Hmpf deren Mailer-Liste sollte schon überlaufen, doch ich geb die Hoffnung langsam Richtung auf, seit MySQL Oracle owned ist.

Grüße Michael
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz