Project

General

Profile

Feature #8851

new logmode: modifyAll

Added by Carsten Rose over 1 year ago. Updated 11 months ago.

Status:
Closed
Priority:
Normal
Target version:
Start date:
15.08.2019
Due date:
% Done:

100%

Estimated time:
Discuss:

Description

Der bisherige Logmode 'modify' soll neu keine Update / Insert Statements mehr loggen mit 'Affected rows'=0.

Es gibt einen neuen Logmode 'modfiyAll', der alle Insert/Update Statements loggt.

#1

Updated by Elias Villiger over 1 year ago

  • Tracker changed from Support to Feature
  • Status changed from New to Ready to sync (develop)
#2

Updated by Elias Villiger over 1 year ago

  • Status changed from Ready to sync (develop) to Closed
  • % Done changed from 0 to 100
#3

Updated by Carsten Rose over 1 year ago

  • Target version changed from 146 to 19.8.0
#4

Updated by Carsten Rose about 1 year ago

Die Aenderungen wurden bzgl Unterscheidung modify / modifyAll wieder zurueck genommen. Die Erweiterung des Logging von CREATE, ALTER,... ist drin geblieben.

Problem: es wurde gar nicht mehr geloggt (sql.log blieb leer)!!!

Ursache: Fehler in der Implementierung - der systemweite default 'modify' ist kleiner als 'modifyAll' und in QFQ wurde 'modifyAll' gesetzt, der Loglevel steht aber auf 'modify' , also wurde das nicht geloggt.

Ausserdem: Nach Analyse des Codes ist nicht klar geworden was durch 'modifyAll' mehr/weniger geloggt werden soll. Aktuell:

[2020.01.09 10:29:01 +0100][192.168.133.203][Page:1,tt:35,level:5][INSERT INTO Person (`name`) SELECT 'john' FROM FormElement WHERE 1=0]
[2020.01.09 10:29:01 +0100][192.168.133.203][Page:1,tt:35,level:5][ID: 0 - affected rows: 0]

#5

Updated by Elias Villiger 11 months ago

Ich habe meinen Code nochmals getestet und so wie ich das Feature verstehe funktioniert alles wie erwartet: Bei sqlLogMode modify werden nur INSERT/UPDATEs geloggt, die affected rows > 0 haben, bei sqlLogMode modifyAll werden alle INSERT/UPDATEs geloggt.

Wenn in der Config sqlLogMode modify gesetzt ist und im Report z.B. modifyAll, dann überschreibt die Definition im Report immer diejenige in der Config. Das sieht auch in meinen Tests gut aus. sql.log bleibt bei mir nur leer, wenn ich z.B. logMode modify habe und die UPDATEs nichts verändern.

Wenn du mir ein konkretes Setup hast, wo es nicht korrekt funktioniert, schaue ich gerne, dass ich das korrigiere. Ich kann das Problem aber aktuell nicht nachvollziehen.

#6

Updated by Elias Villiger 11 months ago

PS: der Code ist aktuell auf geolean aktiv

Also available in: Atom PDF