virtual-talk.de
Das Eigenleben von OpenSim - Druckversion

+- virtual-talk.de (http://virtual-talk.de)
+-- Forum: Allgemein (http://virtual-talk.de/forumdisplay.php?fid=1)
+--- Forum: Probleme (http://virtual-talk.de/forumdisplay.php?fid=11)
+--- Thema: Das Eigenleben von OpenSim (/showthread.php?tid=1268)

Seiten: 1 2


Das Eigenleben von OpenSim - Lukas Silberstein - 03.04.2019

Hallo,

möchte kurz über das eigenwillige Leben von OpenSim berichten,

weil wir ja alle täglich mit Bugs oder Fehlern umgehen müssen.

Was man heute am Server konfiguriert kann morgen schon wieder ganz anders sein.

Erstellte Gruppen oder Freigaben sind am nächsten Tag nicht vorhanden oder weg oder die Region ist zu obwohl offen

konfiguriert war.

Wir haben gelernt damit zu leben und vertrauen doch einer Software die macht was sie selber will.

Würde selbiges Verhalten innerhalb einer Bank oder in einem Konzern passieren hätte dies fatale Folgen.

Das sichere Active Directory können wir scheinbar vergessen weil die Praxis etwas anderes zeigt und es hier nicht funktioniert.

Ich hatte einen externen Rechner mit OpenSim am Server angebunden.

Dies ist ganz normal weil OpenSim gerade dafür spezialisiert ist.

Das funktioniert auch noch auf verschiedenen Plattformen.

Selbst die Erstellung einer Gruppe für den Zutritt am externen Rechner war reibungslos.

Im Test funktionierte der Teleport wie gewollt.

Nach ein paar Tagen war die Gruppe weg und kein Zugang selbst als Owner war möglich!

Der Owner hat normal immer Zugriff mit oder ohne Gruppe. Es ist egal ob nun eine Gruppe angelegt wurde oder nicht!

Was also jetzt machen?

Ports schecken? NEIN!, hat ja funktioniert mal

In der Datenbank per Hand die UUID's wieder eintragen? NEIN!

Ich habe eine OAR gemacht und diese dann wieder in eine NEUE erstellte Region eingespielt.

Die alte defekte Region werfe ich !!!HOCHKANT!!! auf Grund der verwendeten Position aus der Datenbank vom Robust!

Hätte ich etwas anderes machen können?

Für mich offene Fragen bleiben:

Warum war die Gruppe weg?

Lukas


RE: Das Eigenleben von OpenSim - Tron Mcp - 03.04.2019

Hallo Lukas,

So Pauschal läßt sich das sicher nie beantworten.

Zunächst würde ich im Mantis Tracker von Opensim nachsehen ob ein solches Verhalten bereits jemand gemeldet hat.

Findest du nichts dann musst du selbst eine genaue Untersuchung machen.
Ziel ist das Fehlverhalten reproduzierbar zu machen. Nur dann hat man eine Chance die Ursache zu finden und zu beheben.

Hast du reproduzierbare Fehler gefunden, ist die äußerst genaue Beschreibung aller Randparameter und der Vorgehensweise wichtig.
Damit kannst du auf opensimulator.org im Mantis einen Case aufmachen.

Ich habe das letztes Jahr auch gemacht und dadurch einen Fehler beseitigen geholfen.

Zu deinem Problem direkt:

Ich habe es auch schon ein paar mal gehabt das der Viewer beim betrachten der Region und Landinformationen keine Besitzer oder keine Gruppe anzeigt.
Der Fehler verschwand aber mit Client Neustart.

Wenn deine Gruppe weg war, dann wäre es wichtig gewesen die Datenbank Tabelle direkt zu untersuchen.

Dazu ist die Frage wichtig welche Datenbank du einsetzt.
Bei einer vollwertigen Datenbank wie MYSQL gibt es Rollback Segmente. Sollte eine Datenbank Änderung kein Kommit für einen Vorgang erhalten bevor sie zum Beispiel hart herunter gefahren wird, dann werden nach dem Neustart solche "angebrochenen" Transaktionen zurückgefahren.

Fährt man die Datenbank dagegen geregelt herunter werden offenen Transaktionen abgeschlossen.

Wäre interessant gewesen ob deine Gruppe in der DB noch eingetragen ist.
Ebenso kann man in den Tabellen zum Land sehen ob die Gruppe dem Land zugeordnet ist.

Eine weitere Möglichkeit ist das Gruppen automatisch gelöscht werden wenn sie nicht innerhalb einer bestimmten Zeit ausreichend Mitglieder haben.

Wie gesagt das sind nur paar Gedanken für dich als Anregung.

Ohne genaues Protokoll was du wann und in welcher Reihenfolge gemacht hast, muss alle Spekulation bleiben.

Ausserdem solltest du dich fragen mit welchen Viewern Zugang zu deinem Land möglich war. Eventuell gibt es Varianten die die normalen Rechtestrukturen übergehen, und Änderungen in die Datenbank zulassen. Die Frage ist hier immer welche Seite die Zugriffsrecht prüft. Ist es der Viewer, der unautorisierte Änderungen verhindert, hast du schlechte Karten dies zu unterbinden.


RE: Das Eigenleben von OpenSim - Kubwa - 03.04.2019

ICH habe die Gegenteilige Erfahrung gemacht.
Wenn ich in OpenSim etwas einstelle bleibt es wie es ist. OpenSim verhält sich bei mir genau so wie erwartet. Ich kann da kein Eigenleben entdecken.

Wieso die Gruppe plötzlich weg war, kann man nicht mehr sagen. Interessant wäre der Inhalt deiner Regions Datenbank, der Inhalt der Robust Datenbank sowie die Logs der Region und des Robust gewesen, wenn du versuchst die Region zu betreten.

Das ist es halt: nicht wild rum probieren und auf gut Glück hoffen das es wieder läuft. Fehleranalyse... Was steht in den DBs, was sagt die Konsole (nicht nur Fehler oder Warnungen geben Auskunft). Es ist kein Problem wenn man das nicht selber kann. Es gibt ja Leute die man fragen kann und die auch gerne helfen Smile

(03.04.2019, 16:37)Tron Mcp schrieb: Eine weitere Möglichkeit ist das Gruppen automatisch gelöscht werden wenn sie nicht innerhalb einer bestimmten Zeit ausreichend Mitglieder haben.

Nope. Das macht OpenSim nicht von Haus aus. Das muss man tatsächlich selber implementieren. OpenSim ist es völlig egal, ob Jahre lang nur eine Person in einer Gruppe ist.


RE: Das Eigenleben von OpenSim - Manni - 03.04.2019

Da muss ich Kubwa zustimmen.

Also in den verschiedenen LOG Dateien steht drin, wer dort wann Einstellungen vorgenommen hat und wer die Gruppe gelöscht hat.

Alleine geht so etwas nicht, zumindest ist mir kein Fall bekannt.

Das einzige wo ich nicht durchsteige ist, wie viel Zeug muss man auf seine Regionen packen, um die Datenbank abzuschießen.
Das ist mal so und mal so, einen festen Nenner kann ich nicht ausmachen.


RE: Das Eigenleben von OpenSim - Tron Mcp - 03.04.2019

(03.04.2019, 16:54)Kubwa schrieb: ICH habe die Gegenteilige Erfahrung gemacht.
Wenn ich in OpenSim etwas einstelle bleibt es wie es ist. OpenSim verhält sich bei mir genau so wie erwartet. Ich kann da kein Eigenleben entdecken.

Wieso die Gruppe plötzlich weg war, kann man nicht mehr sagen. Interessant wäre der Inhalt deiner Regions Datenbank, der Inhalt der Robust Datenbank sowie die Logs der Region und des Robust gewesen, wenn du versuchst die Region zu betreten.

Das ist es halt: nicht wild rum probieren und auf gut Glück hoffen das es wieder läuft. Fehleranalyse... Was steht in den DBs, was sagt die Konsole (nicht nur Fehler oder Warnungen geben Auskunft). Es ist kein Problem wenn man das nicht selber kann. Es gibt ja Leute die man fragen kann und die auch gerne helfen Smile

(03.04.2019, 16:37)Tron Mcp schrieb: Eine weitere Möglichkeit ist das Gruppen automatisch gelöscht werden wenn sie nicht innerhalb einer bestimmten Zeit ausreichend Mitglieder haben.

Nope. Das macht OpenSim nicht von Haus aus. Das muss man tatsächlich selber implementieren. OpenSim ist es völlig egal, ob Jahre lang nur eine Person in einer Gruppe ist.

nun ich bezog mich auf folgende Meldung beim Erstellen neuer Gruppen:


[attachment=8821]

Gesehen in Firestormx64 5.0.1.52150


RE: Das Eigenleben von OpenSim - Kubwa - 03.04.2019

Die Meldung ist Standard und kommt aus SL. Die ist also immer im Viewer vorhanden.
Der Server (OpenSim) führt aber kein Löschen durch.


RE: Das Eigenleben von OpenSim - Tron Mcp - 03.04.2019

(03.04.2019, 17:59)Manni schrieb: Da muss ich Kubwa zustimmen.

Also in den verschiedenen LOG Dateien steht drin, wer dort wann Einstellungen vorgenommen hat und wer die Gruppe gelöscht hat.

Alleine geht so etwas nicht, zumindest ist mir kein Fall bekannt.

Das einzige wo ich nicht durchsteige ist, wie viel Zeug muss man auf seine Regionen packen, um die Datenbank abzuschießen.
Das ist mal so und mal so, einen festen Nenner kann ich nicht ausmachen.

Also nach meiner Erfahrung wird eine Region auf jeden Fall abgeschlossen wenn man die Sim sauber herunter fährt.
Dort erhältst du auch eine entsprechende Meldung: Persisting changed Objects.


[attachment=8822]

Ich interpretiere das mal so: Die Änderungen der Sim die noch nicht "persistent" sind werden in die Datenbank nun als abgeschlossen zurückgeschrieben.

Des Weiteren habe ich in der OpenSimDefaults.ini einen Eintrag in Erinnerung, wo man die Dauer eintragen kann wann Änderungen einer Sim "persistent" zurück geschrieben werden.



hier ein Auszug aus OpenSimDefaults.ini

[Startup]
    ; ##
    ; ## PRIM STORAGE
    ; ##

    ; Persistence of changed objects happens during regular sweeps. The following control that behaviour to
    ; prevent frequently changing objects from heavily loading the region data store.
    ; If both of these values are set to zero then persistence of all changed objects will happen on every sweep.
    ;
    ; Objects will be considered for persistance in the next sweep when they have not changed for this number of seconds
    MinimumTimeBeforePersistenceConsidered = 60
    ; Objects will always be considered for persistance in the next sweep if the first change occurred this number of seconds ago
    MaximumTimeBeforePersistenceConsidered = 600


Jedoch beziehen sich beide sicher nur auf den Zusammenhang SIM und Datenbank da beide Aktionen in der Sim Instanz laufen.
Ob sich das auch auf die Robust auswirkt habe ich nie getestet. Weiss jemand ob die OpenSimDefaults.ini überhaupt in der Robust Instanz ausgeführt wird?

Gruppen Änderungen würde ich aber in der Robust Instanz verorten.
Daher würde ich Lukas Problem eher an anderer Stelle zuerst suchen.

(03.04.2019, 19:24)Kubwa schrieb: Die Meldung ist Standard und kommt aus SL. Die ist also immer im Viewer vorhanden.
Der Server (OpenSim) führt aber kein Löschen durch.

Schade, sonst hätten wir für Lukas eine einfache Lösung


RE: Das Eigenleben von OpenSim - Manni - 04.04.2019

Ja genau, das hab ich ja ganz übersehen.
Aus alten Zeiten gibt es noch Scripte die den OpenSimulator mit Kill beenden.
Ein Screen Killen (screen -X -S SCREENNAME kill)
oder bei laufenden betrieb den Server neu starten (Ja das machen viele)
oder einfach am beenden kreuzt den Simulator schließen sind Untaten.
Wenn der Simulator gerade am schreiben ist können die unmöglichsten Ereignisse eintreten in der Datenbank.

Hier hatte ich mal ein Problem mit dem beenden:
https://forum.ubuntuusers.de/topic/screen-per-script-steuern-befehl-wird-nicht-au/#post-9043670


RE: Das Eigenleben von OpenSim - DarkWolf - 04.04.2019

Hallo,

um Instanzen in einem Screen Prozess zu stoppen, nutze ich folgende Zeilen in einer Bash Datei

#!/bin/bash
screen -S INSTANZNAME -p 0 -X eval "stuff 'shutdown'^M"

In der ini habe ich kurze Speicherzeiten eingestellt


RE: Das Eigenleben von OpenSim - Lukas Silberstein - 04.04.2019

Hallo,

konnte nun das Problem bei den anderen zugesperrten Regionen lösen! Meine Denkweise im Bezug auf den beschriebenen Fehler

war unrichtig. Der Fehler lag nicht an der Gruppe und das ich die .oar NEU eingespielt habe, hätte ich mir auch sparen können.

Um den Fehler herauszufinden habe ich mir von der Region in der Konsole den Zustand - Übersicht anzeigen lassen.

Habe gestaunt als ich lesen durfte Login = disable !!!!

Was man disabeln kann dürfte sich auch enabeln lassen mit login = enable

Das war es auch schon! Alle Regionen funktionieren wieder und ich kann mich wieder einloggen.

[attachment=8823]

Lukas