LQPP/Datenbankeingriffe
Aus Piratenwiki
LOG für Datenbankeingriffe auf lqfb.piratenpartei.de dbase=liquid_feedback_pp
2012-05-20 ~19:00 (ib) - Delegationsverfall
Das update script core-update.v1.3.0-v1.3.1.sql setzt den Zeitstempel im Feld last_login nicht automatisch, dies wird hier manuell getan, damit der Delegationsvervall auch für Benutzer greifen kann, die sich nach dem Updatenicht mehr angemeldet haben. Zusätzlich wird sichergestellt, dass das Feld locked bei allen zur Zeit des Updates deaktivierten Benutzer gesetzt ist.
BEGIN; UPDATE member SET last_login = '2012-04-06 03:03:00.0' WHERE last_login IS NULL ; COMMIT; sudo .../psql-wrapper.sh 05-timestamp.sql liquid_feedback_pp BEGIN psql:05-timestamp.sql:2: NOTICE: word is too long to be indexed DETAIL: Words longer than 2047 characters are ignored. UPDATE 5961 COMMIT
echo "SELECT id FROM member WHERE active = FALSE ;" | sudo sudo -u postgres psql liquid_feedback_pp_20120406_aspostgres
BEGIN; UPDATE member SET locked = TRUE WHERE id IN (...); COMMIT; sudo .../psql-wrapper.sh ensurelock.sql liquid_feedback_pp BEGIN UPDATE 1749 COMMIT
2012-05-07 ~20:00 (ib) - User vom 4.5. erneut sperren
Mit der Einführung des Delegationsverfalls hat sich die Datenbankstruktur geändert. Früher gab es ein Feld 'active' welches angegeben hat, ob ein Benutzer aktiv oder gesperrt ist. Heute zeigt das Feld an, ob das Stimmrecht noch aktiv oder bereits verfallen ist. Die Sperrung eines Benutzers geschieht über das neue Feld 'locked'. Am 4. Mai habe ich (wie in der Vergangenheit) das Feld 'active' auf false gesetzt. Dies wird jedoch durch erneutes Anmelden des Benutzers wieder überschrieben. Im Folgenden wird die Sperrung korrekt durchgeführt:
BEGIN; update member set locked = TRUE where id = '????' ; COMMIT; BEGIN UPDATE 1 COMMIT
2012-05-04 ~20:00 (ib) - Umsetzung von Nutzungsbedingungen 9.1
Einem Beschluss des Bundesvorstands folgend wurden Titel und Text einer Initiative entfernt und ein Nutzer gesperrt.
BEGIN; update initiative set name = 'Text entfernt gem. Nutzungsbedingungen 9.1' where id = 3068 ; update draft set content = 'Text entfernt gem. Nutzungsbedingungen 9.1' where initiative_id = 3068 ; update member set active = FALSE where id = '????' ; COMMIT; UPDATE 1 UPDATE 2 UPDATE 1
Zusätzlich Entfernung des automatisch generierten HTML Codes:
BEGIN; update rendered_draft set content = 'Text entfernt gem. Nutzungsbedingungen 9.1' where draft_id = 8267 ; update rendered_draft set content = 'Text entfernt gem. Nutzungsbedingungen 9.1' where draft_id = 8268 ; COMMIT; UPDATE 1 UPDATE 1
2012-04-06 03:03 (ib) - Update Core von v1.3.0 auf v.1.3.1
Das Frontend wurde auf die letzte Version der 1.x Serie aktualisiert. Dafür wird Core 1.3.1 benötigt. Mit dem Update wird der Delegationsverfall aktiviert. Die Datenbank wurde mit pg_dump gesichert und umbenannt. Es wurde eine neue Datenbank erstellt, der neue Core eingespielt und dann die gesicherten Daten zurückgespielt. Darüber hinaus wurden keine Datenbankeingriffe durchgeführt. Während des gesamten Prozesses war das System von außen nicht erreichbar, so dass keine scheinbar erfolgreichen Nutzereingaben verloren gehen konnten. Beim Einspielen des Cores, beim Zurückspielen der Datenbankinhalte und bei den ersten Rechnungsläufen traten keine Fehler auf. Ein bekannter (in Version 2.0 gefixter Bug) wurde korrigiert.
2012-03-18 22:45 (ib) - Sperrungen für Operstion Cleanup
Grund: Die Clearingstelle hat 1606 Invite-Codes zur Sperrung übermittelt. Siehe: Blog Post
1. Ids für Deaktivierung und E-Mail/Benutzernamen für Benachrichtigung extrahieren:
Source:
SELECT member.id, member.notify_email, member.notify_email_unconfirmed, member.name
FROM invite_code INNER JOIN member ON (invite_code.member_id = member.id)
WHERE invite_code.code IN (
'xxxxx-xxxxx-xxxxx-xxxxx',
.
.
'xxxxx-xxxxx-xxxxx-xxxxx');
.
.
(1596 rows)
2. Deaktivierung der Accounts:
Source:
BEGIN;
UPDATE member
SET active = FALSE
WHERE id in (
'XXXX',
...
'XXX');
COMMIT;
$ sudo .../psql-wrapper.sh 04--deactivate_member.sql liquid_feedback_pp . . BEGIN UPDATE 1596 COMMIT
3. Löschung der nicht verwendeter Invite-Codes:
Source:
BEGIN;
DELETE FROM invite_code
WHERE (used ISNULL) AND (code in (
'XXXXX-XXXXX-XXXXX-XXXXX',
...
'XXXXX-XXXXX-XXXXX-XXXXX'));
COMMIT;
$ sudo .../psql-wrapper.sh 05--delete_invalid_invites_wrapper.sql liquid_feedback_pp . . BEGIN DELETE 10 COMMIT
Die Benutzer wurden per E-Mail informiert. Die Profildaten werden in naher Zukunft gelöscht.
2012-11-12 (ib) - Manuelle Verifizierung einer E-Mail-Adresse
Grund: Nutzer hat sich nicht fristgerecht im System verifiziert und das Passwort vergessen. Adresse wurde durch manuelles zusenden eines Bestätigungscodes verifiziert.
source: set_new_email_for_member.sql
cp .../sqllib/set_new_email_for_member.sql . vim set_new_email_for_member.sql sudo .../bin/psql-wrapper.sh set_new_email_for_member.sql liquid_feedback_pp BEGIN UPDATE 1 COMMIT
2011-11-02 23:55 (ib) - Manuelles Einfrieren der Satzungs- und Programanträge für den Bundesparteitag in Offenbach
Grund: Beschluss des Bundesvorstand vom 01.10.2011:
- Die in der Diskussionphase befindlichen Themen, die für eine Antragstellung auf dem Bundesparteitag als Programm- oder Satzungsänderungsantrag infrage kommen, werden am 2. November 2011 um 23:59 Uhr manuell von den Lqfb-Admins eingefroren, um ein rechtzeitiges Ergebnis der Themen noch vor dem Bundesparteitag sicherzustellen.
Erzeugung der Liste einzufrierender Themen:
$ echo "SELECT id FROM issue WHERE issue.policy_id IN (1,2) AND accepted NOTNULL AND half_frozen ISNULL AND closed ISNULL ;" | sudo -u postgres psql liquid_feedback_pp | sort -n | grep -v "[^0-9 ]" | xargs | sed 's/ /, /g 843, 844, 847, 855, 858, 859, 862, 865, 866, 869, 870, 871, 872, 873, 874, 875, 876, 879, 880, 881, 882, 885, 890, 891, 892, 893, 894, 896, 905, 908, 912, 914, 916, 918, 921, 924, 927, 928, 932, 937, 955, 958, 964, 967, 971, 972, 973, 988, 992, 994, 995, 996, 997, 998, 1000, 1008, 1012, 1021, 1026
Manuelle Kontrolle der Liste über das Webinterface.
Anlegen der Steuerdatei:
$ vi man_half_freeze.sql BEGIN; UPDATE issue SET half_frozen='2011-11-02 23:59' WHERE id IN ( 843, 844, 847, 855, 858, 859, 862, 865, 866, 869, 870, 871, 872, 873, 874, 875, 876, 879, 880, 881, 882, 885, 890, 891, 892, 893, 894, 896, 905, 908, 912, 914, 916, 918, 921, 924, 927, 928, 932, 937, 955, 958, 964, 967, 971, 972, 973, 988, 992, 994, 995, 996, 997, 998, 1000, 1008, 1012, 1021, 1026 ) AND policy_id IN (1,2) AND accepted NOTNULL AND half_frozen ISNULL AND closed ISNULL ; COMMIT;
Vorbereiten und Durchführen des Datenbankeingriffs:
# Normales Backup triggern: $ sudo /opt/liquid_feedback/bin/lf-backup # Den Hintergrundprozess zur Auszählung stoppen: $ sudo /etc/init.d/lf-daemon stop # Warten auf die Beendigung es aktuellen Zähllaufs (ca. 20 Min)... # Den Webserver stoppen: $ sudo /etc/init.d/lighttpd stop # Manuellen Datenbankdump durchführen: $ sudo -u postgres pg_dump liquid_feedback_pp > 2011-11-03--pre-freeze-backup.sql # Datenbankeingriff vornehmen: $ sudo /opt/liquid_feedback/bin/psql-wrapper.sh man_half_freeze.sql liquid_feedback_pp # Webserver und Auszählprozess wieder starten $ sudo /etc/init.d/lighttpd start $ sudo /etc/init.d/lf-daemon start # Weiteres normales Backup triggern $ sudo /opt/liquid_feedback/bin/lf-backup
Testen der Verfügbarkeit und Kontrolle einiger eingefrorener Themen.
Anmerkung: In der Ankündigung waren auch Themen mit dem Regelwerk "Meinungsbild / Beschlussvorlage" genannt. Diese wurden dem Vorstandsbeschluss folgend nicht eingefroren (sie laufen aufgrund des kürzeren Regelwerks ohnehin alle vor dem Parteitag aus). Es war außerdem angekündigt, dass ein Thema mit ausschließlich zurückgezogenen Initiativen nicht eingefroren würde. Dieses Thema wurde eingefroren, weil es möglich ist, währen der Phase "Eingefroren" Alternative Initiativen zu erzeugen.
2011-10-19 18:00 (ib) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat 60 Invite-Codes zur Löschung übermittelt. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #11)
1. Benutzer bereits verwendeter Invite-Codes identifizieren und benachrichtigen:
Source:
SELECT invite_code.code, member.id, member.active, member.name,
member.notify_email, member.notify_email_unconfirmed
FROM invite_code INNER JOIN member ON (invite_code.member_id = member.id)
WHERE invite_code.code IN (
'xxxxx-xxxxx-xxxxx-xxxxx',
.
.
'xxxxx-xxxxx-xxxxx-xxxxx');
.
.
(13 rows)
Ergebnis:
- 13 der 60 Invite-Codes wurden verwendet.
- Die betroffenen Teilnehmer werden angeschrieben und Informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
- Es konnten nur 12 der 13 Teilnehmer angeschrieben werden, da zu einem Nutzer keine E-Mail-Adresse vorhanden war. Dieser Nutzer war außerdem schon mit einem früheren Vorgang gesperrt worden.
2. Sperrung der identifizierten Teilnehmer:
Source: delete_member.sql
$ sudo cp .../delete_member.sql . $ sudo vim delete_member.sql $ sudo .../psql-wrapper.sh delete_member.sql liquid_feedback_pp . . 13x (1 row)
3. Löschung der nicht verwendeter Invite-Codes:
Source: delete_invalid_invites.sql
$ sudo cp .../delete_invalid_invites.sql . $ sudo vim delete_invalid_invites.sql $ sudo .../psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp . . BEGIN DELETE 47 COMMIT
2011-09-7 08:30 (mpd) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat 14 Invite-Codes zur Löschung übermittelt. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #11)
Verwendung der ungültigen Invite-Codes testen.
Vor der Löschung wird nach schon verwendeten Codes gesucht um die betreffenden Accounts zu sperren und die betreffenden Inivte-Codes zur nachvollziehbarkeit zu erhalten.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp . . . (5 rows)
Ergebnis:
- 5 Invite-Codes wurden verwendet.
Die Teilnehmernummer und die bestätigte Benachrichtigungsadresse werden entnommen. Die betroffenen Teilnehmer werden angeschrieben und Informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
Es konnten nur vier der 5 Teilnehmer angeschrieben werden, da zu einem Nutzer keine E-Mail-Adresse vorhanden war. Dieser Nutzer war außerdem schon mit einem früheren Vorgang gesperrt worden.
Sperrung der Teilnehmer mit ungültigen Invite-Codes
source: delete_member.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 9 COMMIT
2011-08-27 17:30 (mpd) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat einen Invite-Code auf Wunsch des Bundesvorstands übermittelt. (Sperrung ist nicht durch die Mitgliederverwaltung unter : Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung dokumentiert.)
Verwendung der ungültigen Invite-Codes testen.
Vor der Löschung wird nach schon verwendeten Codes gesucht um die betreffenden Accounts zu sperren und die betreffenden Inivte-Codes zur nachvollziehbarkeit zu erhalten.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp . (1 row)
Ergebnis:
- 1 Invite-Code wurde verwendet.
Die Teilnehmernummer und die bestätigte Benachrichtigungsadresse werden entnommen. Der betroffene Teilnehmer wird angeschrieben und informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
Sperrung der Teilnehmer mit ungültigen Invite-Codes
source: delete_member.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) COMMIT
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
Alle übermittelten Invite-Codes wurden bereits verwendet.
2011-08-27 17:30 (mpd) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat 86 Invite-Codes zur Löschung übermittelt. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #10)
Verwendung der ungültigen Invite-Codes testen.
Vor der Löschung wird nach schon verwendeten Codes gesucht um die betreffenden Accounts zu sperren und die betreffenden Inivte-Codes zur nachvollziehbarkeit zu erhalten.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp . . . (18 rows)
Ergebnis:
- 18 Invite-Codes wurden verwendet.
Die Teilnehmernummer und die bestätigte Benachrichtigungsadresse werden entnommen. Die betroffenen Teilnehmer werden angeschrieben und Informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
Sperrung der Teilnehmer mit ungültigen Invite-Codes
source: delete_member.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 68 COMMIT
2011-08-18 11:25 (mod) - Einfügen neuer Invitecodes
Grund: Die Clearingstelle hat 20k neue Invitecodes bereitgestellt, die eingepflegt werden müssen.
source: LQPP/insert-invite-codes.sql
Pack 1 - 10000 Stück
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/insert-invite-codes.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim insert-invite-codes.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh insert-invite-codes.sql liquid_feedback_pp BEGIN INSERT 0 10000 COMMIT
Pack 2 - 10000 Stück
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/insert-invite-codes.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim insert-invite-codes.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh insert-invite-codes.sql liquid_feedback_pp BEGIN INSERT 0 10000 COMMIT
2011-06-26 16:30 (mpd) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat 294 Invite-Codes zur Löschung übermittelt. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #9)
Verwendung der ungültigen Invite-Codes testen.
Vor der Löschung wird nach schon verwendeten Codes gesucht um die betreffenden Accounts zu sperren und die betreffenden Inivte-Codes zur nachvollziehbarkeit zu erhalten.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp . . . (62 rows)
Ergebnis:
- 62 Invite-Codes wurden verwendet.
Die Teilnehmernummer und die bestätigte Benachrichtigungsadresse werden entnommen. Die betroffenen Teilnehmer werden angeschrieben und Informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
Sperrung der Teilnehmer mit ungültigen Invite-Codes
source: delete_member.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 232 COMMIT
2011-04-15 00:00 (mpd) - Manuelles Einfrieren von Initiativen zur Bundesmitgliederversammlung und verkürzen der Eingefrorenphase
Grund: Rechtzeitige Abstimmung zum 13.5.2011 aufgrund des Bundesparteitags am 14.05.2011 für Programm- und Satzungsänderungsanträge sowie sonstige Anträge.
source: man_half_freeze_short_verification.sql
Abfrage der laufenden Initiativen mit Bedingungen entsprechend der source.
mpd@rogers:~$ sudo sudo -u www-data psql liquid_feedback_pp -c "SELECT id FROM issue WHERE issue.policy_id IN (1,2,3) AND accepted NOTNULL AND half_frozen ISNULL AND closed ISNULL;" id
721 737 739 728 741 738 736 740
(8 rows)
Datenbankdump durchführen
sudo sudo -u www-data pg_dump --disable-triggers --data-only --column-inserts liquid_feedback_pp > /opt/manual_db_dumps/pp_dump.2012-04-15_23-30.sql
Eingriff in die Datenbank
mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon stop Stopping lf-daemon mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/man_half_freeze_short_verification.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh man_half_freeze_short_verification.sql liquid_feedback_pp BEGIN UPDATE 8 UPDATE 8 COMMIT mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon start Starting lf-daemon
2011-01-18 14:15 (mpd) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat 535 Invite-Codes zur Löschung übermittelt. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #6)
Verwendung der ungültigen Invite-Codes testen.
Vor der Löschung wird nach schon verwendeten Codes gesucht um die betreffenden Accounts zu sperren und die betreffenden Inivte-Codes zur nachvollziehbarkeit zu erhalten.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp . . . (52 rows)
Ergebnis:
- 52 Invite-Codes wurden verwendet.
Die Teilnehmernummer und die bestätigte Benachrichtigungsadresse werden entnommen. Die betroffenen Teilnehmer werden angeschrieben und Informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
Sperrung der Teilnehmer mit ungültigen Invite-Codes
source: delete_member.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) . . . COMMIT
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 483 COMMIT
2010-12-16 01:20 (mpd) - update application-core to v1.3.0
Grund: new release by public-software-group [1]
mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon stop mpd@rogers:/opt/liquid_feedback$ sudo sudo -u www-data pg_dump --disable-triggers --data-only --column-inserts liquid_feedback_pp > /opt/manual_db_dumps/liquid_feedback_pp-2010-12-16_01-20.sql mpd@rogers:/opt/liquid_feedback$ sudo rm core mpd@rogers:/opt/liquid_feedback$ sudo ln -s /opt/liquid_feedback/liquid_feedback_core-v1.3.0/ /opt/liquid_feedback/core mpd@rogers:/opt/liquid_feedback$ sudo cp core/update/core-update.v1.2.9-v1.3.0.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh core-update.v1.2.9-v1.3.0.sql liquid_feedback_pp BEGIN CREATE VIEW COMMENT COMMENT ALTER TABLE psql:core-update.v1.2.9-v1.3.0.sql:33: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "ignored_issue_pkey" for table "ignored_issue" CREATE TABLE CREATE INDEX COMMENT COMMENT COMMENT COMMENT COMMENT ALTER TABLE ALTER TABLE DROP TRIGGER DROP FUNCTION COMMENT COMMENT COMMENT psql:core-update.v1.2.9-v1.3.0.sql:73: NOTICE: type reference member.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:73: NOTICE: type reference area.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:73: NOTICE: type reference issue.id%TYPE converted to integer DROP FUNCTION psql:core-update.v1.2.9-v1.3.0.sql:79: NOTICE: type reference member.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:79: NOTICE: type reference area.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:79: NOTICE: type reference issue.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:79: NOTICE: type reference member.id%TYPE converted to integer DROP FUNCTION DROP TYPE CREATE TYPE COMMENT COMMENT COMMENT COMMENT COMMENT COMMENT COMMENT COMMENT psql:core-update.v1.2.9-v1.3.0.sql:239: NOTICE: type reference member.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:239: NOTICE: type reference area.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:239: NOTICE: type reference issue.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:239: NOTICE: type reference member.id%TYPE converted to integer CREATE FUNCTION psql:core-update.v1.2.9-v1.3.0.sql:246: NOTICE: type reference member.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:246: NOTICE: type reference area.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:246: NOTICE: type reference issue.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:246: NOTICE: type reference member.id%TYPE converted to integer COMMENT psql:core-update.v1.2.9-v1.3.0.sql:266: NOTICE: type reference member.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:266: NOTICE: type reference area.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:266: NOTICE: type reference issue.id%TYPE converted to integer CREATE FUNCTION psql:core-update.v1.2.9-v1.3.0.sql:272: NOTICE: type reference member.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:272: NOTICE: type reference area.id%TYPE converted to integer psql:core-update.v1.2.9-v1.3.0.sql:272: NOTICE: type reference issue.id%TYPE converted to integer COMMENT psql:core-update.v1.2.9-v1.3.0.sql:317: NOTICE: type reference issue.id%TYPE converted to integer CREATE FUNCTION psql:core-update.v1.2.9-v1.3.0.sql:369: NOTICE: type reference member.id%TYPE converted to integer CREATE FUNCTION CREATE FUNCTION COMMIT mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon start Starting lf-daemon
2010-12-08 (ib) - Manuelle Verifizierung einer E-Mail-Adresse
Grund: Nutzer hat sich nicht fristgerecht im System verifiziert und das Passwort vergessen.
source: set_new_email_for_member.sql
cp /opt/liquid_feedback/sqllib/set_new_email_for_member.sql . vim set_new_email_for_member.sql sudo /opt/liquid_feedback/bin/psql-wrapper.sh set_new_email_for_member.sql liquid_feedback_pp BEGIN UPDATE 1 UPDATE 1 COMMIT
2010-10-29 20:00 (mpd) - Sperrung eines Teilnehmers aufgrund von Verstoß gegen die Nutzungsbedingungen
Grund: Anweisung des zuständigen Bundesvorstands aufgrund: https://lqfb.piratenpartei.de/pp/static/doc/useterms.html#_3__Registrierung_f%C3%BCr_LiquidFeedback und http://vorstand.piratenpartei.de/2010/09/24/protokoll-der-vorstandssitzung-2010-09-23/
source: LQPP/deactivate_member.sql
Ein Teilnehmer wird gesperrt und danach mit der hinterlegten Email benachrichtigt.
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/deactivate_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim deactivate_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh deactivate_member.sql liquid_feedback_pp BEGIN DELETE 1 UPDATE 1 COMMIT
2010-10-28 15:40 (mpd) - Löschung ungültiger Invite-Codes
Grund: Übermittlung von 45 ungültigen Invite-Codes zur Löschung. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #4 und #5)
Verwendung der ungültigen Invite-Codes testen.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp code | created | used | member_id | comment ------+---------+------+-----------+--------- (0 rows)
Es wurden keine ungültigen Invite-Codes verwendet.
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 45 COMMIT
2010-10-27 00:40 (mpd) - liquid_feedback_core_update v1.2.8. to 1.2.9.
Grund: Neues release und bugfixes
mpd@rogers:/opt/liquid_feedback$ sudo cp core/update/core-update.v1.2.8-v1.2.9.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh core-update.v1.2.8-v1.2.9.sql liquid_feedback_pp
2010-10-22 23:55 (mpd) - Manuelle Einleitung von Abstimmungen zur Bundesmitgliederversammlung
Grund: http://wiki.piratenpartei.de/2010-08-12_-_Vorstandssitzung#LiquidFeedback
source: man_full_freeze.sql
Abfrage der eingefrorenen Initiativen mit Bedingungen entsprechend der source.
mpd@rogers:~$ sudo sudo -u www-data psql liquid_feedback_pp -c "SELECT id FROM issue WHERE issue.policy_id IN (1,2,3) AND accepted NOTNULL AND half_frozen NOTNULL AND fully_frozen ISNULL AND closed ISNULL;" id ----- 419 458 511 393 470 455 445 557 460 492 454 543 453 432 493 512 456 471 409 410 517 467 429 431 530 541 466 457 488 518 442 (31 rows)
Eingriff in die Datenbank um 31 Themen in die Abstimmungsphase zu versetzen.
mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon stop Stopping lf-daemon mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/man_full_freeze.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh man_full_freeze.sql liquid_feedback_pp BEGIN manual_freeze ---------------
(..) (31 rows) COMMIT mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon start Starting lf-daemon
2010-10-14 01:10 (mpd) - Manuelles Einfrieren von Initiativen zur Bundesmitgliederversammlung
Grund: http://wiki.piratenpartei.de/2010-08-12_-_Vorstandssitzung#LiquidFeedback
source: man_half_freeze.sql
Abfrage der laufenden Initiativen mit Bedingungen entsprechend der source.
mpd@rogers:~$ sudo sudo -u www-data psql liquid_feedback_pp -c "SELECT id FROM issue WHERE issue.policy_id IN (1,2,3) AND accepted NOTNULL AND half_frozen ISNULL AND closed ISNULL;" id ----- 460 511 470 543 557 541 549 492 512 493 516 471 429 488 530 467 517 419 518 (19 rows)
Datenbankdump durchführen
sudo sudo -u www-data pg_dump --disable-triggers --data-only --column-inserts liquid_feedback_pp > /opt/manual_db_dumps/pp_dump.2010-10-14_01-08.sql
Eingriff in die Datenbank
mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon stop Stopping lf-daemon mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh man_half_freeze.sql liquid_feedback_pp BEGIN UPDATE 19 COMMIT mpd@rogers:/opt/liquid_feedback$ sudo /etc/init.d/lf-daemon start Starting lf-daemon
2010-09-26 21:25 (mpd) - Löschung von Mitgliedern auf Grund von Verstößen gegen die Nutzungsbedingungen
Grund: Beschluss des Antrags Ordnungsgemäßen Systembetrieb von LiquidFeedback sicherstellen siehe Protokoll: http://vorstand.piratenpartei.de/2010/09/24/protokoll-der-vorstandssitzung-2010-09-23/
source: delete_member.sql
Aus den Profildaten der 2 Accounts werden die bestätigten Email-Adressen entnommen um die gelöschten Benutzer per Mail zu benachrichtigen.
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) COMMIT
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) COMMIT
Die, zu den gelöschten Accounts gehörenden, Invite-Codes werden an die Clearingstelle im Block übermittelt um die Sperrung der entsprechenden Referenzschlüssel durch die Mitgliederverwaltung zu ermöglichen.
2010-09-16 09:15 (mpd) - updating from core 1.2.5 to core 1.2.8
Grund: Neue Releases beinhalten sicherheitsrelevante updates sowie fixes bei der Auszählung.
mpd@rogers:/opt/liquid_feedback$ sudo cp core/update/core-update.v1.2.5-v1.2.6.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh core-update.v1.2.5-v1.2.6.sql liquid_feedback_pp BEGIN CREATE VIEW CREATE VIEW COMMENT DROP VIEW CREATE VIEW COMMENT CREATE VIEW COMMENT CREATE VIEW COMMENT COMMIT mpd@rogers:/opt/liquid_feedback$ sudo cp core/update/core-update.v1.2.6-v1.2.7.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh core-update.v1.2.6-v1.2.7.sql liquid_feedback_pp BEGIN CREATE VIEW DROP VIEW CREATE VIEW COMMIT mpd@rogers:/opt/liquid_feedback$ sudo cp core/update/core-update.v1.2.7-v1.2.8.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh core-update.v1.2.7-v1.2.8.sql liquid_feedback_pp BEGIN CREATE VIEW ALTER TABLE ALTER TABLE DROP INDEX psql:core-update.v1.2.7-v1.2.8.sql:11: NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "delegation_area_id_key" for table "delegation" ALTER TABLE psql:core-update.v1.2.7-v1.2.8.sql:12: NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "delegation_issue_id_key" for table "delegation" ALTER TABLE CREATE INDEX COMMIT
2010-09-07 23:43 (mpd) - patching db for security reason
Grund: Möglichkeit der doppelten Zählung von Delegationen für Themen- und Themenbereichsmitgliedschaften
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/patch_core125_create_unique_index_20100906.sql . mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh patch_core125_create_unique_index_20100906.sql liquid_feedback_pp BEGIN ALTER TABLE ALTER TABLE DROP INDEX psql:patch_core125_create_unique_index_20100906.sql:7: NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "delegation_area_id_key" for table "delegation" ALTER TABLE psql:patch_core125_create_unique_index_20100906.sql:8: NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "delegation_issue_id_key" for table "delegation" ALTER TABLE CREATE INDEX COMMIT
2010-09-05 11:23 (ib) - Fehler nach Update --> Downgrade Core to 1.2.5
Problem: Nach dem Einspielen des Updates hat postgresql Zugriffsberechtigungsfehler ausgegeben. Das lf-update Programm wurde nicht mehr richtig ausgeführt und es konnten sich keine neuen Benutzer anmelden, weil datenbankseitig keine sessions erzeugt werden konnten.
Vorgehen:
Webserver und lf-update Prozess sofort gestoppt. Datenbank als data-only dump gesichert.
Getestet ob alle (älteren) Updates korrekt eingespielt waren:
$ sudo bin/psql-wrapper.sh core-update.v1.2.4-v1.2.5.sql liquid_feedback_pp ROLLBACK etc.
Versucht, Datenbank über einem neuen core aus dem letzten data-only dump wieder herzustellen (Dauer: ca. 1,5h):
$ sudo bin/psql-wrapper.sh rename-db.sql liquid_feedback_pp # ohne $DB # mehrfach, da db busy $ sudo sudo -u www-data createdb liquid_feedback_pp $ sudo sudo -u postgres psql --set ON_ERROR_STOP=1 liquid_feedback_pp -f /opt/archive/pp_dump.2010-09-05---3.sql
...leider keine Besserung der Symptomatik.
Datenbank aus dem data-only dump von 9:11 Uhr wieder hergestellt (Dauer: ca. 1,5h):
$ sudo sudo -u postgres psql template1 -c alter database liquid_feedback_pp rename to liquid_feedback_pp_20100905_failedrestore $ sudo sudo -u www-data createdb liquid_feedback_pp $ sudo sudo -u www-data psql --set ON_ERROR_STOP=1 liquid_feedback_pp -f core/core.sql $ sudo sudo -u postgres psql --set ON_ERROR_STOP=1 liquid_feedback_pp -f /opt/archive/pp_dump.2010-09-05---2.sql
Zur Sicherheit wurde die Software auf den letzten Stand vor dem Beginn es Updateprozesses zurückgesetzt. Das System lief und verursachte keine Fehler. Leider sind die Daten die zwischen 11:23 und 14:45 eingegeben wurden nicht mehr im laufenden System verfügbar. Das Backup von 11:23 ist jedoch vorhanden. Aus Zeitmangel und Datenschutzgründen war es mir nicht möglich, das Backup zu untersuchen oder Datenbestände manuell ins laufende System zu übernehmen. Es tut mir sehr Leid, dass es zur Nichtverfügbarkeit und einem Datenverlust im laufenden System gekommen ist. Ich übernehme dafür die volle Verantwortung und werde an anderer Stelle eine Fehleranalyse veröffentlichen.
2010-09-05 9:19 (ib) - UPDATE LiquidFeedback Core from 1.2.6 to 1.2.7
Grund: Fix für Version 1.2.6
$ sudo cp core/update/core-update.v1.2.6-v1.2.7.sql . $ sudo bin/psql-wrapper.sh core-update.v1.2.6-v1.2.7.sql liquid_feedback_pp BEGIN CREATE VIEW psql:core-update.v1.2.6-v1.2.7.sql:7: ERROR: view "global_delegation" does not exist psql:core-update.v1.2.6-v1.2.7.sql:11: ERROR: current transaction is aborted, commands ignored until end of transaction block ROLLBACK
Das .tar.gz für 1.2.6 war offensichtlich bereits gefixed. Keine Änderungen. Rücksprache mit JBE...
2010-09-05 9:14 (ib) - UPDATE LiquidFeedback Core from 1.2.5. to 1.2.6
Grund: Kern Version 1.2.6 enthält wichtiges Update für korrekte Auszählungen.
$ sudo cp core/update/core-update.v1.2.5-v1.2.6.sql . $ sudo bin/psql-wrapper.sh core-update.v1.2.5-v1.2.6.sql liquid_feedback_pp BEGIN CREATE VIEW CREATE VIEW COMMENT DROP VIEW CREATE VIEW COMMENT CREATE VIEW COMMENT CREATE VIEW COMMENT COMMIT
2010-09-03 12:41 (mpd) - Löschung ungültiger Invite-Codes
Grund: Übermittlung von 13 ungültigen Invite-Codes zur Löschung. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #3)
Verwendung der ungültigen Invite-Codes testen.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp code | created | used | member_id | comment ------+---------+------+-----------+--------- (0 rows)
Es wurden keine ungültigen Invite-Codes verwendet.
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 13 COMMIT
2010-08-25 (mpd) - Löschung ungültiger Invite-Codes
Grund: Übermittlung von 8 ungültigen Invite-Codes zur Löschung. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #2)
Verwendung der ungültigen Invite-Codes testen.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp code | created | used | member_id | comment ------+---------+------+-----------+--------- (0 rows)
Es wurden keine ungültigen Invite-Codes verwendet.
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 8 COMMIT
2010-08-21 (mpd) - Löschung ungültiger Invite-Codes
Grund: Die Clearingstelle hat 145 Invite-Codes zur Löschung übermittelt. (siehe Verzeichnis Versand Referenzschlüssel an Clearingstelle zur Sperrung #1)
Verwendung der ungültigen Invite-Codes testen.
Vor der Löschung wird nach schon verwendeten Codes gesucht um die betreffenden Accounts zu sperren und die betreffenden Inivte-Codes zur nachvollziehbarkeit zu erhalten.
source: test_used_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/test_used_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim test_used_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh test_used_invalid_invites.sql liquid_feedback_pp * * * * * (3 rows)
Ergebnis:
- Drei Invite-Codes wurden verwendet.
Die Teilnehmernummer, der Name und die Benachrichtigungsadresse werden entnommen. Die betroffenen Teilnehmer werden angeschrieben und Informiert. (Email-Body: LQPP/email_accountsperrung) Die betroffenen Invite-Codes werden in einem Bericht an die Clearingstelle übermittelt.
Sperrung der Teilnehmer mit ungültigen Invite-Codes
source: delete_member.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) COMMIT
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) COMMIT
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_member.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_member.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_member.sql liquid_feedback_pp BEGIN delete_member --------------- (1 row) COMMIT
Löschung nicht verwendeter Invite-Codes
source: delete_invalid_invites.sql
mpd@rogers:/opt/liquid_feedback$ sudo cp sqllib/delete_invalid_invites.sql . mpd@rogers:/opt/liquid_feedback$ sudo vim delete_invalid_invites.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh delete_invalid_invites.sql liquid_feedback_pp BEGIN DELETE 142 COMMIT
2010-08-15 (mpd) - UPDATE DB to liquid_feedback_core_1.2.4 =
Grund: Aktualisieren der DB auf die neue Version des Kerns.
mpd@rogers:/opt/liquid_feedback$ sudo cp core/update/core-update.v1.2.3-v1.2.4.sql core_update_124.sql mpd@rogers:/opt/liquid_feedback$ sudo bin/psql-wrapper.sh core_update_124.sql liquid_feedback_pp BEGIN CREATE VIEW COMMIT
2010-08-15 (mpd) - PATCHE for function global_lock() (core 1.2.3)
Grund: Kritische Deadlocks minimieren bei hoher Anzahl Zugriffe
source: patch_core123_function_global_lock_20100815-2.sql
sudo cp /opt/liquid_feedback/sqllib/patch_core123_function_global_lock_20100815-2.sql patch_core123_function_global_lock_20100815-2.sql sudo /opt/liquid_feedback/bin/psql-wrapper.sh patch_core123_function_global_lock_20100815-2.sql liquid_feedback_pp
2010-08-14 (mpd) - manuelle einrichtung einer verifizierten emailadresse
Grund: Nutzer kann sich nicht anmelden, da Tippfehler in der email und passwort vergessen.
source: set_new_email_for_member.sql
sudo cp /opt/liquid_feedback/sqllib/set_new_email_for_member.sql set_new_email_for_member.sql sudo vim set_new_email_for_member.sql sudo /opt/liquid_feedback/bin/psql-wrapper.sh set_new_email_for_member.sql liquid_feedback_pp
