Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Roundcube 1.6.1 update "Schlüssellänge"?

19 views
Skip to first unread message

Rolf Bensch

unread,
Dec 19, 2021, 5:53:56 AM12/19/21
to
Hallo zusammen,

heute bei einem allgemeinen Update:

Installation of: roundcube (1.6.1) ...
- copying program files (/var/www/htdocs/roundcube) ...
ERROR: Error in DDL upgrade 2020020101: [1071] Schlüssel ist zu lang. Die maximale Schlüssellänge beträgt 767
purging document root directories ...
* Stopping Apache ... [ OK ]
* Starting Apache ... [ OK ]
Successfully installed: roundcube (1.6.1)!

RC läuft danach unauffällig mit RC-Version 1.5.1.

Läuft hier etwas aus dem Ruder?

Grüße

Rolf

Rolf Bensch

unread,
Dec 19, 2021, 5:54:50 AM12/19/21
to
Es handelt sich um einen E1.

Juergen Edner

unread,
Dec 20, 2021, 3:54:54 AM12/20/21
to
Hallo Rolf,

> heute bei einem allgemeinen Update:
>
>    Installation of: roundcube (1.6.1) ...
>    - copying program files (/var/www/htdocs/roundcube) ...
>    ERROR: Error in DDL upgrade 2020020101: [1071] Schlüssel ist zu
> lang. Die maximale Schlüssellänge beträgt 767

bitte teste einmal, ob die in diesem Issue-Ticket beschriebene
Vorgehensweise Dein Problem löst:

https://github.com/roundcube/roundcubemail/issues/8231

Gruß Jürgen
--
Mail: jue...@eisfair.org

Juergen Edner

unread,
Dec 20, 2021, 3:56:02 AM12/20/21
to
Hallo Rolf,

> bitte teste einmal, ob die in diesem Issue-Ticket beschriebene
> Vorgehensweise Dein Problem löst:
>
> https://github.com/roundcube/roundcubemail/issues/8231

ich vergaß zu fragen welche Datenbank-Version Du verwendest?

Rolf Bensch

unread,
Dec 20, 2021, 4:12:55 AM12/20/21
to
Hallo Jürgen,

Am 20.12.21 um 09:54 schrieb Juergen Edner:
Im Link wird das Problem i.V.m. MySQL beschrieben. Hier läuft aber SQLITE (Standard).

Grüße

Rolf

Juergen Edner

unread,
Dec 20, 2021, 2:52:30 PM12/20/21
to
Hallo Rolf,

>>> heute bei einem allgemeinen Update:
>>>
>>>     Installation of: roundcube (1.6.1) ...
>>>     - copying program files (/var/www/htdocs/roundcube) ...
>>>     ERROR: Error in DDL upgrade 2020020101: [1071] Schlüssel ist zu
>>> lang. Die maximale Schlüssellänge beträgt 767
>>
>> bitte teste einmal, ob die in diesem Issue-Ticket beschriebene
>> Vorgehensweise Dein Problem löst:
>>
>> https://github.com/roundcube/roundcubemail/issues/8231
>
> Im Link wird das Problem i.V.m. MySQL beschrieben. Hier läuft aber
> SQLITE (Standard).

für SQLite wird meines Wissens bis dato kein Workaround angeboten.

Deshalb noch einmal meine Frage "Hast Du eine Neuinstallation
durchgeführt oder eine bestehende Installation aktualisiert?"

Wie es zu dem Problem genau gekommen ist konnte ich der Diskussion
bis dato nicht entnehmen. Generell ist es so, dass Roundcube eine
Aktualisierung der Datenbanktabellen durchführt sobald eine neue
Version installiert wurde.

Hierzu werden SQL-Dateien aus dem Verzeichnis [RC-Home]/SQL/sqlite
nacheinander in chronologischer Reihenfolge abgearbeitet. Du kannst
ja testweise einmal den folgenden Befehl ausführen um zu schauen was
genau passiert.

/var/install/bin/roundcube-check-database

Anschließend kannst Du den aktuellen Aufbau der Tabellen mit den
Befehlen in den SQL-Dateien zu vergleichen, gegebenenfalls Befehle
auskommentieren bzw. fehlende SQL-Befehle manuell auszuführen um
das Datenbankschema auf den aktuellen Stand zu bringen.

Rolf Bensch

unread,
Dec 21, 2021, 7:26:14 AM12/21/21
to
Hallo Jürgen,

Am 20.12.21 um 20:52 schrieb Juergen Edner:
> Hallo Rolf,
>
>>>> heute bei einem allgemeinen Update:
>>>>
>>>>     Installation of: roundcube (1.6.1) ...
>>>>     - copying program files (/var/www/htdocs/roundcube) ...
>>>>     ERROR: Error in DDL upgrade 2020020101: [1071] Schlüssel ist zu lang. Die maximale Schlüssellänge beträgt 767
>>>
>>> bitte teste einmal, ob die in diesem Issue-Ticket beschriebene Vorgehensweise Dein Problem löst:
>>>
>>> https://github.com/roundcube/roundcubemail/issues/8231
>>
>> Im Link wird das Problem i.V.m. MySQL beschrieben. Hier läuft aber SQLITE (Standard).
>
> für SQLite wird meines Wissens bis dato kein Workaround angeboten.
>
> Deshalb noch einmal meine Frage "Hast Du eine Neuinstallation durchgeführt oder eine bestehende Installation aktualisiert?"

Das ist eine bestehende Installation, die regelmäßig upgedated wird.


> Wie es zu dem Problem genau gekommen ist konnte ich der Diskussion
> bis dato nicht entnehmen. Generell ist es so, dass Roundcube eine
> Aktualisierung der Datenbanktabellen durchführt sobald eine neue
> Version installiert wurde.
>
> Hierzu werden SQL-Dateien aus dem Verzeichnis [RC-Home]/SQL/sqlite
> nacheinander in chronologischer Reihenfolge abgearbeitet. Du kannst
> ja testweise einmal den folgenden Befehl ausführen um zu schauen was
> genau passiert.
>
> /var/install/bin/roundcube-check-database

Check Roundcube 'sqlite' database layout

executing '/var/www/htdocs/roundcube/bin/update.sh ...

sqlite-version :
roundcube-version: 2020122900

The database is up-to-date!

Press ENTER to continue


> Anschließend kannst Du den aktuellen Aufbau der Tabellen mit den Befehlen in den SQL-Dateien zu vergleichen, gegebenenfalls Befehle
> auskommentieren bzw. fehlende SQL-Befehle manuell auszuführen um
> das Datenbankschema auf den aktuellen Stand zu bringen.

Hmm. Ich habe im Moment keinerlei negative Auswirkungen. Auch die Installation wurde schließlich mit "Successfully installed: roundcube (1.6.1)!" beendet. Diese zeitaufwändige Prüfung hebe ich mir auf falls Probleme auftauchen.

Bei oberflächlicher Recherche ist mir aufgefallen: in der angemeckerten Datei 2020020101.sql befindet sich lediglich die Zeichenkette "--empty". Ich bin nicht so sehr der SQL-Guru aber das erscheint mir doch etwas zu wenig für eine Befehlszeile zu sein.

Unterm Strich: hier läuft's - trotz Fehlermeldung

Grüße

Rolf

Juergen Edner

unread,
Dec 22, 2021, 11:00:36 AM12/22/21
to
Hallo Rolf,

>> /var/install/bin/roundcube-check-database
>
>    Check Roundcube 'sqlite' database layout
>
>    executing '/var/www/htdocs/roundcube/bin/update.sh ...
>
>    sqlite-version   :
>    roundcube-version: 2020122900
>
>    The database is up-to-date!
>
>    Press ENTER to continue

dies sieht ja schon einmal vielversprechend aus.
Einzig, dass die SQLite-Version nicht angezeigt wird überrascht mich
etwas. Bei mir wird diese korrekt ausgegeben. Hast Du diese eventuell
bewusst gelöscht?

> Hmm. Ich habe im Moment keinerlei negative Auswirkungen. Auch die
> Installation wurde schließlich mit "Successfully installed: roundcube
> (1.6.1)!" beendet. Diese zeitaufwändige Prüfung hebe ich mir auf falls
> Probleme auftauchen.
>
> Bei oberflächlicher Recherche ist mir aufgefallen: in der angemeckerten
> Datei 2020020101.sql befindet sich lediglich die Zeichenkette "--empty".
> Ich bin nicht so sehr der SQL-Guru aber das erscheint mir doch etwas zu
> wenig für eine Befehlszeile zu sein.
>
> Unterm Strich: hier läuft's - trotz Fehlermeldung

Gemäß dem obigen Datumsstempel ist das Datenbank-Schema auf dem
aktuellen Stand, von daher sollte dies so erst einmal in Ordnung
sein. In der Vergangenheit konnte es schon einmal passieren, dass
die Aktualisierung nicht korrekt durchgeführt wurde. Aus diesem
Grund hatte ich seinerzeit eine entsprechende Prüfung vorgesehen:

+ /var/install/config.d/roundcube.sh - Das Skript prueft 28.06.2020
nun auch, ob das Datenbank-Layout auf dem aktuellen
Stand ist und zeigt gegebenenfalls eine entsprechende
Meldung an.

Rolf Bensch

unread,
Dec 23, 2021, 6:04:12 AM12/23/21
to
Hallo Jürgen,

Am 22.12.21 um 17:00 schrieb Juergen Edner:
> Hallo Rolf,
>
>>> /var/install/bin/roundcube-check-database
>>
>>     Check Roundcube 'sqlite' database layout
>>
>>     executing '/var/www/htdocs/roundcube/bin/update.sh ...
>>
>>     sqlite-version   :
>>     roundcube-version: 2020122900
>>
>>     The database is up-to-date!
>>
>>     Press ENTER to continue
>
> dies sieht ja schon einmal vielversprechend aus.
> Einzig, dass die SQLite-Version nicht angezeigt wird überrascht mich
> etwas. Bei mir wird diese korrekt ausgegeben. Hast Du diese eventuell
> bewusst gelöscht?

Nein

eis64-2 (/) # sqlite3 --version
3.35.5 2021-04-19 18:32:05 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886

>> Hmm. Ich habe im Moment keinerlei negative Auswirkungen. Auch die Installation wurde schließlich mit "Successfully installed: roundcube (1.6.1)!" beendet. Diese zeitaufwändige Prüfung hebe ich mir auf falls Probleme auftauchen.
>>
>> Bei oberflächlicher Recherche ist mir aufgefallen: in der angemeckerten Datei 2020020101.sql befindet sich lediglich die Zeichenkette "--empty". Ich bin nicht so sehr der SQL-Guru aber das erscheint mir doch etwas zu wenig für eine Befehlszeile zu sein.
>>
>> Unterm Strich: hier läuft's - trotz Fehlermeldung
>
> Gemäß dem obigen Datumsstempel ist das Datenbank-Schema auf dem aktuellen Stand, von daher sollte dies so erst einmal in Ordnung
> sein. In der Vergangenheit konnte es schon einmal passieren, dass
> die Aktualisierung nicht korrekt durchgeführt wurde. Aus diesem
> Grund hatte ich seinerzeit eine entsprechende Prüfung vorgesehen:
>
> + /var/install/config.d/roundcube.sh - Das Skript prueft  28.06.2020
>   nun auch, ob das Datenbank-Layout auf dem aktuellen
>   Stand ist und zeigt gegebenenfalls eine entsprechende
>   Meldung an.

Das hat auch offensichtlich funktioniert.

Grüße

Rolf

Juergen Edner

unread,
Dec 23, 2021, 8:48:55 AM12/23/21
to
Hallo Rolf,

>>>     Press ENTER to continue
>>
>> dies sieht ja schon einmal vielversprechend aus.
>> Einzig, dass die SQLite-Version nicht angezeigt wird überrascht mich
>> etwas. Bei mir wird diese korrekt ausgegeben. Hast Du diese eventuell
>> bewusst gelöscht?
>
> Nein
>
> eis64-2 (/) # sqlite3 --version
> 3.35.5 2021-04-19 18:32:05
> 1b256d97b553a9611efca188a3d995a2fff712759044ba480f9a0c9e98fae886

Ich habe mich missverständlich ausgedrückt. Die Version wird mittels des
folgenden Befehls direkt aus der Datenbank gelesen:

/usr/bin/sqlite3 /var/roundcube/data/roundcubemail.db "SELECT value FROM
system WHERE name = 'sqlite-version';"

Rolf Bensch

unread,
Dec 23, 2021, 12:00:21 PM12/23/21
to
Hallo Jürgen,

Am 23.12.21 um 14:48 schrieb Juergen Edner:
... liefert hier keine Ausgabe:

eis64-2 (/) # /usr/bin/sqlite3 /var/roundcube/data/roundcubemail.db "SELECT value FROM system WHERE name = 'sqlite-version';"
eis64-2 (/) #

besser gemäß sqlite-Doku:

eis64-2 (/) # /usr/bin/sqlite3 /var/roundcube/data/roundcubemail.db "SELECT sqlite_version();"
3.35.5
eis64-2 (/) #

oder ohne db-Zugriff:
eis64-2 (/) # echo $(/usr/bin/sqlite3 --version) | grep -o "^\S*"
3.35.5
eis64-2 (/) #


Grüße

Rolf

Marcus Röckrath

unread,
Dec 23, 2021, 12:30:05 PM12/23/21
to
Hallo Rolf,

Rolf Bensch wrote:

>> Ich habe mich missverständlich ausgedrückt. Die Version wird mittels des
>> folgenden Befehls direkt aus der Datenbank gelesen:
>>
>> /usr/bin/sqlite3 /var/roundcube/data/roundcubemail.db "SELECT value FROM
>> system WHERE name = 'sqlite-version';"
>
> ... liefert hier keine Ausgabe:
>
> eis64-2 (/) # /usr/bin/sqlite3 /var/roundcube/data/roundcubemail.db
> "SELECT value FROM system WHERE name = 'sqlite-version';" eis64-2 (/) #

Hier auch nicht.

Schaut man direkt in die db-Datei steht da also value 2020122900 drin.

Fehlt da in der Kommandozeile noch ein Print fü den selektiertenWert aus der
DB?

> besser gemäß sqlite-Doku:
>
> eis64-2 (/) # /usr/bin/sqlite3 /var/roundcube/data/roundcubemail.db
> "SELECT sqlite_version();" 3.35.5
> eis64-2 (/) #
>
> oder ohne db-Zugriff:
> eis64-2 (/) # echo $(/usr/bin/sqlite3 --version) | grep -o "^\S*"
> 3.35.5
> eis64-2 (/) #

Nein, denn es geht nicht um die Version von sqlite3 sondern um die Version
der roundcube-Datenbank.

--
Gruß Marcus
[eisfair-Team]

Heiko Siek

unread,
Dec 31, 2021, 2:35:59 AM12/31/21
to
Am 22.12.21 um 17:00 schrieb Juergen Edner:
> Hallo Rolf,
>
>>> /var/install/bin/roundcube-check-database
>>
>>     Check Roundcube 'sqlite' database layout
>>
>>     executing '/var/www/htdocs/roundcube/bin/update.sh ...
>>
>>     sqlite-version   :
>>     roundcube-version: 2020122900
>>
>>     The database is up-to-date!
>>
>>     Press ENTER to continue
>
> dies sieht ja schon einmal vielversprechend aus.
> Einzig, dass die SQLite-Version nicht angezeigt wird überrascht mich
> etwas. Bei mir wird diese korrekt ausgegeben. Hast Du diese eventuell
> bewusst gelöscht?

Hallo,
gleiches sehe ich hier auf meiner Installation.
Funktioniert aber ohne erkennbare Probleme.

executing '/var/www/htdocs/roundcube/bin/update.sh ...

sqlite-version :
roundcube-version: 2020122900

The database is up-to-date!


Gruß
Heiko
--
Der Computer bietet Lösungen für Probleme, die ohne ihn gar
nicht bestünden ...
0 new messages