Autor Thema: Maximale Länge von Attributnamen begrenzen  (Gelesen 1427 mal)

Online DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4264
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #30 am: 19 Februar 2019, 18:05:12 »
Leider geht die Diskussion allmählich an meinem eigentlichen Anliegen vorbei.

Nochmal zu DbRep. Es werden lange Readings generiert, wenn man sich den Datenbankinhalt mit "fetchrows" ausliest und anschaut. Der Readingname ist die eingeutige Kennzeichnung des Datensatzes bestehend aus Timestamp, dem Device, dem Reading (in der Datenbank) und Indizes zur Kennzeichnung von doppelten Datensätzen.
Das alles dient lediglich der Anzeige, aber auch dazu müssen Readings generiert werden.
Müssen diese Readings nun wegen dieser angekündigten Massnahme gekürzt werden, wird der Bezeichner nicht mehr eindeutig sein der Informationsgehalt fragwürdig. So mancher liest sich DB-Inhalte aus und speichert sie unter anderem Namen in Dummies etc.

Aber im Prinzip geht es mir darum, nicht alles zu regulieren nur weil man dem User (Author) die Mündigkeit abspricht selbst zu entscheiden womit er leben kann oder möchte.
Jeder Nutzer kann doch dem Maintainer mitteilen, dass er die Gestaltung der Readings zu lang oder wiedersinnig findet.
Ich vertraue diesbezüglich der Schwarmintelligenz.

Aber wie es scheint stehe ich damit auf verlorenem Posten.
Ich bitte also noch einmal darum dass sich die Entscheidungträger in Weitsicht üben und den Spielraum vergrößern.

Danke !
ESXi 6.5 auf NUC6i5SYH mit FHEM auf Debian 9/64 Bit  (Stretch), DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline Harst

  • Developer
  • Full Member
  • ****
  • Beiträge: 192
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #31 am: 19 Februar 2019, 18:15:32 »
Was heißt feature Level 6?

Was wir auf jeden Fall verhindern sollten ist, dass Anwender, die einfach ein Update machen, nicht mehr arbeiten können. Und das schließt auch das neue Anlegen von Dingen ein. Vielleicht wäre ein Testlauf gut, wenn möglich in einem Entwicklungsbereich. Wenn Ihr es scharf schaltet, bevor die relevanten Module darauf ausgelegt sind, dann ist das Selbstmord für die Software.

Und noch einmal zu langen Namen:

Ich wäre dafür, so etwas wie die Aliasse auch für readings anzudenken und ggf. eine automatische Kürzung der Namen für die Anzeige, z.B. mit ..., ggf. mit Tooltips, die den langen Namen enthalten.

Und dann bin ich dafür, entweder einen langen Wert für die Grenze zu nehmen (200), oder einen sinnvoll kurzen, und das ist 20-30, denn 64 ist ein Wert, der weder für generische Namen, noch für Menschen gut ist. AUßerdem sollte das Limit dann auch für Gerätenamen gelten.

Horst



Online DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4264
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #32 am: 19 Februar 2019, 18:25:03 »
Zitat
Was heißt feature Level 6?
Das bezieht sich auf das globale Attribut "featureLevel", welches bestimmte Funktionen im FHEM ein/ausschaltet.
Im Prinzip, um mal beim Beispiel DbRep zu bleiben, könnte ich die Verfügbarkeit der Funktion "fetchrows" davon abhängig machen ob der User das Attribut <6 eingestellt hat oder nicht. Dadurch könnte ich entscheiden ob eine sinnvolle Nutzung der Funktion mit Level > 6 möglich ist (oder andersherum).

Grüße,
Heiko
ESXi 6.5 auf NUC6i5SYH mit FHEM auf Debian 9/64 Bit  (Stretch), DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16064
  • s/fhem\.cfg/configDB/g
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #33 am: 19 Februar 2019, 18:25:24 »
Was heißt feature Level 6?

Wer solche Fragen stellt, sollte seinen Status als Developer überdenken.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg Stammtisch am 20.09.2019

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20888
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #34 am: 19 Februar 2019, 19:29:09 »
Wg. der Umfrage: bisher gab es gar keine erzwungene Laengenbegrenzung, und das fehlt in der Liste.

Bei der Anfangsfrage von Betateilchen war meine erste Reaktion: wieso begrenzen? Und ich wollte sie ablehnen, aber da ich erst einen halben Tag spaeter dazukam, gab es schon etliche Beitraege, die alle fuer eine Begrenzung waren, also dachte ich: wenn die Mehrheit dafuer ist, von mir aus.

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22072
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #35 am: 19 Februar 2019, 19:33:40 »
Persönlich finde ich es Sinnvoll wenn ein Modulauthor gezwungen wird über die Namensgebung von Readings sich Gedanken zu machen. Wir hatten hier schon diverse gruselige Vorfälle mit Readingsnamen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline Harst

  • Developer
  • Full Member
  • ****
  • Beiträge: 192
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #36 am: 19 Februar 2019, 20:29:38 »
@betateilchen: danke für die Blumen, wenn Ihr wollt, macht den Status wieder weg.

Aber ich habe jetzt gelernt, zu fragen, was ich nicht verstehe. Und jetzt weiß ich, dass featurelevel vom System vorgeben wird und nicht anderesherum vom User/Programm gesetzt wird.
Und dass es im Forum als Synonym zu einer Version verwendet wird.

Horst

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16064
  • s/fhem\.cfg/configDB/g
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #37 am: 19 Februar 2019, 20:34:47 »
@betateilchen: danke für die Blumen, wenn Ihr wollt, macht den Status wieder weg.

Mein Hinweis war weder böse noch persönlich gemeint, sondern wirklich ein gutgemeinter Rat. Dinge wie featurelevel sollte man als Entwickler einfach kennen, wenn man in FHEM arbeitet. Und solche Grundlagen sind ja auch hinreichend dokumentiert.

Nix für ungut.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg Stammtisch am 20.09.2019

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16064
  • s/fhem\.cfg/configDB/g
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #38 am: 19 Februar 2019, 20:40:54 »
Bei der Anfangsfrage von Betateilchen war meine erste Reaktion: wieso begrenzen?

Wg. der Umfrage: bisher gab es gar keine erzwungene Laengenbegrenzung,

Diese Aussage ist definitiv falsch. Eine Längenbegrenzung für readings gibt es doch schon ewige Zeiten und sehr viel länger als die configDB gibt. In DbLog ist die Länge von readings derzeit mit 64 Zeichen festgelegt. Der Punkt ist einfach, dass diese Längen bisher nie in Anspruch genommen wurden. Das hat sich nun geändert.

Meine ursprüngliche Bitte nach einer Begrenzung bezog sich übrigens auf Attribute. Die Idee, readings und attribute letztendlich gleich zu behandeln, kommt nicht von mir. Aber dafür eine zentrale Funktion zu benutzen, die beides auf gültige Zeichen und Parameter prüft, macht auf jeden Fall Sinn.

Trotzdem muss die Diskussion erlaubt sein, ob überlange readings und attribute wirklich einen Sinn und/oder Nutzen haben. In diesem Sinne ist eine Begrenzung durchaus hilfreich.

Persönlich finde ich es Sinnvoll wenn ein Modulauthor gezwungen wird über die Namensgebung von Readings sich Gedanken zu machen. Wir hatten hier schon diverse gruselige Vorfälle mit Readingsnamen.

*unterschreib*
« Letzte Änderung: 19 Februar 2019, 20:45:56 von betateilchen »
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg Stammtisch am 20.09.2019

Online DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4264
Antw:Maximale Länge von Attributnamen begrenzen
« Antwort #39 am: 19 Februar 2019, 22:11:35 »
Nur der Vollständigkeit halber:

Zitat
In DbLog ist die Länge von readings derzeit mit 64 Zeichen festgelegt. Der Punkt ist einfach, dass diese Längen bisher nie in Anspruch genommen wurden. Das hat sich nun geändert.

Der User hat die Freiheit die Feldlängen der DB bei Bedarf anzupassen und im DbLog-Modul per Attribut festzulegen dass diese individuellen Längen dann auch verarbeitet und nicht begrenzt werden.
ESXi 6.5 auf NUC6i5SYH mit FHEM auf Debian 9/64 Bit  (Stretch), DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

 

decade-submarginal