Aller au contenu

« Réunion du 28-01-2025 » et « Réunion du 04-02-2025 » : différence entre les pages

De OSWiki
(Différence entre les pages)
 
 
Ligne 1 : Ligne 1 :
= Avertissement =
= Avertissement =
{{Avertissement_résumé|fond=pink |bord=red |message = Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux [http://opensimulator.org/wiki/Office_hours réunions du mardi] ou  sur [http://opensimulator.org/wiki/IRC le canal IRC]. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉}}
{{Avertissement_résumé|fond=pink |bord=red |message = Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux [http://opensimulator.org/wiki/Office_hours réunions du mardi] ou  sur [http://opensimulator.org/wiki/IRC le canal IRC]. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉}}
= Modules =
{{NDLR|fond=white |bord=green|message = <br>
== Module d'arbres==
[[Fichier:Inventaires opensim.jpeg|left|500px ]]Ce schéma a été élaboré pour illustrer le flux de données lors de l'utilisation de l'inventaire dans OpenSimulator. Bien qu'il vise à représenter fidèlement le processus, des erreurs peuvent subsister. Les retours et suggestions sont les bienvenus pour améliorer cette représentation.
<gallery>
}}
Fichier:Vegetation 001.jpg
Fichier:Vegetation 003.jpg
</gallery>
=== Problèmes posés ===
* Cuga Rajal n'arrive pas à planter des arbres sur une région en utilisant [http://opensimulator.org/wiki/Trees_Module '''le module d'arbres d'OpenSim'''].  Il demande où sont stockés les maillages des arbres du  module ou s'il doit en importer. Il a chargé un maillage  sommaire "Tree xml" dans le module, aucun arbre ne s'est planté et le module ne retourne aucune erreur.  Mais, le problèmes peut venir d'autre chose que de la présence ou non d'arbres.
* Il aimerais créer ses propres arbres et utiliser un outil qui lui permettrait de planter les arbres aléatoirement sur la région/parcelle.
 
=== Discussion ===
====Généralités sur le module ====
* Ubit Umarov indique que le module d'arbre devrait fonctionner, mais son utilisation est délicate. Il ne l'a pas testé depuis plusieurs années. Ce module ne permet de créer que des arbres de type Linden Lab, c'est-à-dire ceux proposés dans l'éditeur d'objet des viewers. On peut spécifier la taille et le nombre d'arbres, et il existe même une option pour faire pousser les arbres. Dans le fichier XML, la balise m_seed_point définit les coordonnées du point central A de la plantation, tandis que m_range détermine le rayon du cercle centré sur A où les arbres sont plantés. Les textures sont stockées dans la base de données de la grille, et il est également possible de définir des contraintes d'élévation.
* Les arbres de Linden Lab n'occupent que 25 octets lors de leur envoi, alors que chaque arbre maillé nécessiterait plus de 500 octets, même si les actifs sont en cache.


==== Limites du module ====
= Code principal =
* La liste des arbres Linden Lab est codée en dur, donc il n'est pas possible de remplacer les arbres par des meshes. On peut modifier les caractéristiques des plantes dans le fichier trees.xml du viewer mais les changements ne s'afficheront que pour l'utillisateur du viewer.
== Les inventaires ==
* Si vous laissez le module d'arbre planter des arbres pour vous, il est probable qu'il en place un au milieu d'un objet, sauf si vous plantez des arbres avant de construire dans la zone.
=== Code du noyau et du viewer ===
* Le module d'arbre peut créer un désordre, car il plante aléatoirement n'importe quel arbre sans soin ni logique, ce qui aboutit généralement à un enchevêtrement dense.
* [https://my.osgrid.org/myv2/index.php?name=dan%20banner Dan Banner] par l'intermédiaire d'Hiro Protagonist  demande des précisions sur le code de gestion d'inventaire OpenSim qui s'exécute quand un utilisateur se connecte pour la première fois.
* Les arbres maillés de Linden sont générés par le viewer en cours d'exécution. Un fichier nommé trees.xml se trouve dans le dossier "app_settings". L'avantage des arbres en mesh est qu'ils n'utilisent pas les arbres de Linden Lab, qui, pour une raison quelconque, contiennent un nombre ridicule de triangles et des textures peu attrayantes.
* Ubit Umarov désigne les fonctions nécessaires à la création des entrées d'inventaire de base dans OpenSimulator :
* Le module peut parfois produire un nombre excessif d'arbres, atteignant des milliers.
** Fonction [http://opensimulator.org/viewgit/?a=viewblob&p=opensim&h=b6f7e35c8227ea9b834bc0d2f8c50f0e9cf2d08b&hb=ff479b94cd030cb1fb2de12998b928be4f53e909&f=OpenSim/Services/InventoryService/XInventoryService.cs protected XInventoryFolder CreateFolder(UUID principalID, UUID parentID, int type, string name)]
* Les forêts s'éclaircissent avec l'altitude, mais le module d'arbre ne prend pas cela en compte.
** Fonction [http://opensimulator.org/viewgit/?a=viewblob&p=opensim&h=703e58ba4f677d021817113e6fcf1accae9924bc&hb=ff479b94cd030cb1fb2de12998b928be4f53e909&f=OpenSim/Data/MySQL/MySQLXInventoryData.cs  public bool StoreFolder(XInventoryFolder folder)]
* Si le viewer était amélioré pour créer des arbres aléatoirement sur les terrains, le marché des meshes et des arbres diminuerait sur Second Life, ce qui n'aurait donc aucun intérêt pour Linden Lab.
* Le code responsable des messages d'erreur dans le viewer signalant que l'inventaire est cassé et qui pourrait intéresser Dan Banner est dans le viewer. Le viewer veut avoir des dossiers corrects, c'est tout.


====État du développement ====
=== Structure des inventaires ===
* Localisation du code : / OpenSim / Region / OptionalModules / World / TreePopulator
==== Les types de dossiers et d'objets ====
* Première implémentation du module en 2007. C'est un très vieux code.
* La seule chose qui change avec le temps dans les inventaires sont les types de dossiers. Ils sont facilement rectifiable dans la base de données, cela ne nécessite pas d'effacer l'inventaire.
* Pas de changements significatifs depuis 2013, donc le code  est pratiquement intact depuis bien longtemps. Un rafraîchissement des textures serait une bonne chose.
* Les types de dossier d'inventaire sont listé dans [https://bitbucket.org/opensimulator/libopenmetaverse/src/master/OpenMetaverseTypes/Enums.cs '''https://bitbucket.org/opensimulator/libopenmetaverse/src/master/OpenMetaverseTypes/Enums.cs'''].  
* Le dernier commit utile pour les arbres s'appelle « Tree's trunk should decrease quality at higher distance »(Le tronc de l'arbre devrait perdre en qualité à plus grande distance).
* On peut les trouver aussi sur le wiki officiel d'OpenSimulateur à [http://opensimulator.org/wiki/Database:Inventoryfolders '''cette adresse'''].
* Il y a un commit de 2017 : [http://opensimulator.org/viewgit/?a=commit&p=opensim&h=4b7f79e2967e8e7ac7c70118b70a9b66cd16a2b1 '''corrections et changements sur le module TreePopulatorModule. Veuillez lire OpenSimDefaults.ini '''] qui dit que le module a besoin de plus de travail, mais rien de significatif n'a été fait après cela.
* Seuls les dossiers racine ont le type != -1.
* Le générateur de modules d'arbres a été modifié pour la dernière fois le samedi 12 novembre 02:49:01 2022.
* Le seule problème connu à  propos des objets eux-mêmes est la confusion entre les textures et les snapshots. Mais, cela se produit également dans les IAR. Donc, cela ne s'arrangera pas en les rechargeant.
* Les dossiers et les objets de l'inventaire ne sont qu'une vaste référence aux ressources, ils ajoutent un peu de métadonnées, mais les tables ne stockent rien qui pourrait briser les ressources de quelque manière que ce soit. Les seuls changements connus qui ont été apportés à l'inventaire dans le sens d'une modification sont les types de dossiers et un type d'objet pour les textures/photos. Tout cela remonte à une dizaine d'années. Avant cela, nous ne pouvons pas vraiment déterminer ce que cela aurait pu être parce que git ne remonte que jusqu'à cette date.
* L'inventaire conserve juste un UUI pour référencer un asset, il essaie donc de le récupérer. Tant que l'entrée n'est pas touchée, il essaiera simplement.


=== Remplacer le module par un script LSL ===
==== Script de création d'inventaire ====
* Vincent Sylvester pense que passer par un script LSL est plus judicieux. Le script peut se déplacer aléatoirement sur la région et placer un arbre à la hauteur du terrain. Il permet aussi plus d'options comme définir des modèles différents pour des élévations différentes. Ce ne sont que quelques lignes de code. Une double boucle for, un peu de Frand (aléatoire), hauteur du terrain, rez de l'objet, etc.
* [https://pastebin.com/U1yts0s5  '''Fonction PHP public function createinv($avuuid)'''] pour créer  un inventaire, proposée par Vincent Sylvester
* Vincent Sylvester a écrit un planteur que l'on porte et qui plante des arbres là où on se tient. Le script ajuste les modèles en fonction de l'élévation. Combiné à un script de mouvement aléatoire, il se comporte essentiellement de la même manière que le module.
* Il manque les matériaux, mais de toute façon le viewer le crée.
*
==== Bibliothèque OpenSim ====
* La bibliothèque opensim en bas de l'inventaire est fournie par la région directement.


===Ressources ===
== Service d'assets ==
==== Générateurs d'abres 3D ====
=== Différents types de service d'assets ===
* [http://snappytree.com '''SnappyTree'''] : SnappyTree fournit également des options d'exportation pour les formats de fichiers wavefront et collada afin que les arbres générés puissent être utilisés.
* [http://opensimulator.org/wiki/FSAssets_Service/fr '''Fsassets'''] est un service d'assets destiné aux grandes grilles. Fsassets [https://fr.wikipedia.org/wiki/D%C3%A9duplication '''déduplique'''] les assets par hachage des données du fichier. Plusieurs entrées d'assets (Ndrl : plusieurs UUID d'inventaires ) utilisent les mêmes données sur le disque. Dans fsassets original, les métadonnées sont stockées sur [[Lexique_des_réunions#MySQL| '''MySQL''']], les données sont stockées sur des fichiers disques. Les services d'assets peuvent également être interrompus avec des métadonnées pointant vers des données perdues. (Ndrl : c'est à dire qu'un fichier disque peut manquer ou être abimé et la base de données via l'UUID de l'inventaire ne pourra pas trouver les données nécessaires à l'affichage dans le viewer.)
* Des systèmes similaires à Fsassets existent, comme [https://github.com/FedoraPrime/sras/ '''SRAS'''].
* OSGrid utilise actuellement un service d'assets propriétaire, pas celui d'opensim  quelque chose de personnalisé par [http://opensimulator.org/wiki/OpenSim:_Development_Team '''Melanie_T'''].


==== Générateur d'abres / branches png ====
=== Réparer un serveur d'assets ===
* [https://www.cgchan.com/cantree '''CanTree'''] : À partir de ce site Web, vous pouvez générer autant d'images d'arbres de haute qualité que vous le souhaitez. Aucun téléchargement, aucune installation, aucun plugin n'est nécessaire.
==== Scripts de vérification des inventaires ====
* Vincent Sylvester a écrit un script de vérification des inventaire. [http://opensimulator.org/wiki/Check_inventory_script '''Une page de wiki OpenSimulator lui est consacrée''']. Ce script signale les mêmes erreurs que le viewer. La page du wiki liste '''les moyens de rectifier la plupart de ces erreurs'''. 
* D''''autres problèmes''' que ceux signalés par le viewer ou le script de vérification peuvent exister, mais ils ne devraient pas causer directement de problèmes. En général, les erreurs de types d'éléments d'inventaire ne provoquent pas de problème d'asset.


==== Wiki OpenSimulator ====
==== Utilisation des IAR ====  
* [http://opensimulator.org/wiki/Trees_Module/fr#Mod.C3.A8les_de_v.C3.A9g.C3.A9tation_disponibles '''Trees Module/fr''']
* [http://opensimulator.org/wiki/Inventory_Archives/fr Une IAR] est juste une archive, elle contient un dossier pour la structure et les données de l'inventaire ainsi qu'un dossier contenant les assets que le collecteur d'UUID a récupéré pendant le processus de sauvegarde.
 
* Vider un serveur d'assets et utiliser des IAR est une façon de nettoyer les poubelles d'un serveur d'assets, en repartant de zéro.  
==== Tree It sur stream ====
* On peut également utliser des IAR pour réparer le serveur d'assets. Si vous décompressez l'IAR, vous obtiendrez un dossier d'assets contenant les données des assets référencés par les UUID qu'ils avaient lors de la création de l'IAR. Il suffit ensuite d'utiliser les données de l'asset contenu dans l'IAR pour réparer l'asset cassé (vérifier qu'il est réellement cassé) dans le serveur d'assets.  
* https://store.steampowered.com/app/2386460/Tree_It/
* Il faut vérifier si les données sont cassées parce que le problème peut venir des métadonnées stockées dans la base de données et dans ce cas, cette méthode ne fonctionnera pas.
 
* Ainsi, il faut demander aux utilisateurs des IARs pour aider à la récupération.  
== Attribution d'objets ou de terres à un groupe==
* L'IAR peut faire des dégâts, des duplications et peut ne pas contenir les assets appropriés. Mais, tout le monde ne se soucie pas de faire une IAR. Une partie des utilisateurs peuvent ne pas se connecter depuis plusieurs années et n'en feront jamais. Parfois, (comme sur Osgrid) la sauvegarde d'IAR est si lente que beaucoup se découragent et n'en font pas.
=== Question ===
* Gavin Hird demande s'il est possible d'attribuer des objets ou des terres à un groupe dans OpenSimulator. Il aimerait également connaître la façon d'activer cette option.
 
=== Réponses ===
* Oui o'''n peut attribuer des objets et des terrains à un groupe''' dans OpenSim. Mais, c'est assez dangereux et on peut facilement perdre le contrôle sur un objet.
* Il est possible d'affecter des objets ou un terrain à un groupe. Les permissions du groupe déterminent alors qui peut  interagir ou éditer l'objet ou la parcelle.
* Toutefois, '''pour que le bouton partager soit activé''', les informations du groupe doivent fournir les informations sur le rôle de l'utilisateur  et ce rôle  doit être autorisé à supprimer des objets.
 
{{NDLR|fond=white |bord=green|message = <br>
'''Attribuer un objet à un groupe dans Firestorm''' :
* Dans l''''éditeur''' d'objets , onglet '''"Général"''',
* Cliquer sur la petite clé à droite de Groupe et '''sélectionner un groupe'''
* Cocher la case '''Partager'''.
 
'''Attribuer une parcelle à un groupe dans Firestorm''' :
* Depuis le menu '''"Monde"''' ouvrir le fenêtre '''"À propos du terrain"'''
* À droite de Groupe, '''choisir un groupe''',
}}
 
=== Problème de cache ===
* D'après Vincent Sylvester les permissions de groupe peuvent être un peu difficiles à gérer parce que le cache ne fonctionne pas tout à fait correctement. Il faudrait redémarrer quand on modifie les rôles et leurs permissions. Les groupes copient en mémoire ce qu'ils récupèrent dans la base de données. Mais, lorsqu'on modifie certaines choses, la mise à jour de la copie locale ne semble pas fonctionner correctement. La base de données est modifié, mais pas la copie locale. Vincent Sylvester se demande si ce cache local est encore nécessaire même si les requêtes deviennent plus lentes.
* De plus le code récupère des lignes entières pour n'utiliser qu'un seul champ par ligne. Le module a besoin d'être réécrit à partir de zéro.
* Les droits ne sont pas sur le disque, ils sont dans la  mise en cache au moment de l'exécution. Les paramètres de rôle et les permissions sont mis en cache dans la mémoire. Le viewer y  accède chaque fois qu'il voit l'objet ou que l'on clique dessus.  Mais, pour l'essentiel cela fonctionne bien.
* En revanche le code des groupes, les deux modules auraient besoin d'être réécrits.


= Informations=
= Informations=
== IA et GPU ==
== Maintenance d'Osgrid ==
=== Puces ===
=== Problème des inventaires et assets  ===
* Les participants à la réunion ont parlé de la publication du nouveau modèle d'IA  opensource '''Deepseek''' [https://fr.wikipedia.org/wiki/DeepSeek] au courant de la semaine. Cela a provoqué l'effondrement des actions '''Nvidia'''[https://fr.wikipedia.org/wiki/Nvidia] producteur en autre de processeurs graphiques ([[Lexique_des_réunions#GPU |'''GPU''']]).  
* L'équipe d'[https://www.osgrid.org/ '''OSGrid'''] se confronte à  des problèmes liés au stockage des assets de la grille.
* Aux USA des droits de douane très élevés seront imposés aux fabricants (Nvidia, Apple, Intel ..) de puces (GPU, CPU) qui ont des usines à l'étranger.  
* Le stockage des assets d'OSGrid est saturé, et un problème de taille de [https://fr.wikipedia.org/wiki/Bloc_de_syst%C3%A8me_de_fichiers '''bloc de système de fichiers''' ] a aggravé la situation, rendant inefficace l'utilisation de l'espace. Il semble qu'une partie du stockage des assets avait une taille de bloc de système de fichiers (cluster) trop grande, ce qui a conduit à un gaspillage d'espace important.
* Toutefois, les prix des GPU resteraient élevés. Les tarifs douaniers vont faire exploser les prix aux États-Unis.  
* Un problème autre problème est qu'il existe beaucoup de choses très anciennes avec '''des types incorrects'''.
* D'après Vincent Sylvester, [https://fr.wikipedia.org/wiki/Advanced_Micro_Devices  '''AMD'''] serait rès bien pour le moment.
* Un processus a été lancé pour réécrire tous les assets dans une taille de disque appropriée, mais cela a entrainé des pertes importantes d'assets. Il est possible que les pertes augmentent encore. Ce qui est préoccupant pour la gestion de la grille.
 
* [https://fr.wikipedia.org/wiki/Ceph '''Ceph'''] utilise une architecture distribuée, ce qui signifie que les données sont réparties sur plusieurs nœuds (serveurs) pour assurer la redondance et la tolérance aux pannes. Si la '''configuration n'est pas optimale''', cela peut entrainer des problèmes de gaspillage d'espace.
=== ChaGPT et Deepseek===
* Il faut trouver une solution pour nettoyer les inventaires afin de faciliter la réparation des assets, ce qui pourrait être une étape nécessaire pour résoudre les problèmes de perte de données.
* Personne ne semble avoir testé Deepseek.
* Le vrai problème est de récupérer tous les dossiers et les items, de les valider et de les corriger et de  faire cela le plus proprement possible.
* Andrew Hellershanks n'a pas encore trouvé d'utilité à ChatGPT jusqu'à présent et certainement pas pour le code.  
* Les participants semblent très dubitatifs en ce qui concerne ChatGPT.


== Cartes vidéos ==
=== État des assets d'OSGrid ===
=== Question ===
* Les inventaire de certains utilisateurs comme Gaving Hird sont affectés par la présence d'assets anciens de 2008. Il est impossible de trouver certains des éléments les plus basiques de l'avatar. Donc on ne peut rien faire pour le changer cela, l'inventaire ne trouve pas les éléments de librairie nécessaires.
* Motoko Karu demande aux personnes présentes quelle carte vidéo elles utilisent. Il a l'intension de mettre à jour son matériel et il envisage d'utiliser une carte '''Radeon™ RX 7800 XT''' (AMD). Il pense que c'est  le meilleur rapport qualité/prix.
* Pour la plupart des utilisateurs, les assets sont dans le [https://fr.wikipedia.org/wiki/Grappe_de_serveurs '''cluster'''] et devraient fonctionner une fois la réparation du cluster terminée. On parle d'un cluster de quelques [https://fr.wikipedia.org/wiki/T%C3%A9rabit '''TB de données''']. Malheureusement, il semble que le cluster ait perdu des tonnes d'assets.
* Osgrid est aussi confrontés à la gestion d'utilisateurs qui sont là depuis si longtemps que de '''nombreux changements''' dans la façon dont les choses fonctionnent se sont produits. Des changements venant d'OpenSim, d'autres d'osgrid, d'autres de Linden Lab, d'autres encore de divers développeurs de Viewers - et les inventaires d'Osgrid portent les marques de tout cela.
* Orgrid doit aussi faire face à d''''anciennes spécificités''' qui ne sont plus d'actualités mais qui ont encore des effets sur la grille.
* '''Suitcase de l'hypergrid''' lorsqu'elle a été introduite pour la première fois a causé toutes sortes de problèmes et, c'est peut-être encore le cas.
* OSGrid utilise actuellement un service d'assets propriétaire, pas celui d'opensim quelque chose de personnalisé par [http://opensimulator.org/wiki/OpenSim:_Development_Team '''Melanie_T'''].


=== Réponses ===
=== Nombre d'utilisateurs ===
* Actuellement Motoko Karu utilise une carte Nvidia '''GeForce GTX 950.'''
* D'après Hiro Protagonist un [https://sql.sh/fonctions/agregation/count '''COUNT(*)'''] sur la table des utilisateurs causerait probablement des problèmes pendant '''des jours''' avant qu'il soit terminé.
* Cuga Rajal utilise '''Apple Silicon,''' donc il aurait 32 cœurs de GPU.
* Ce qui est important pour une grille c'est de faire la différence entre les utilisateurs actifs et inactifs.
* Kayaker Magic utilise une carte '''Nvidia GTX 1070'''.
* [https://www.osgrid.org/infos_grid_result.php '''Sur le site'''] le nombre total d'utilisateurs indiqué est 161654 à ce jour. Hiro Protagonist se demande à quel point ces chiffres sont exacts. Il pense que c'est trop peu par rapport à la réalité.
* Andrew Hellershanks utilise une carte '''Geforce GTX 1050''' et un processeur AMD FX(tm)-8320 à huit cœurs. Il préfère AMD car il y a un meilleur support sous Linux. Il est passé à Nvidia parce qu'il voulait utiliser [https://fr.wikipedia.org/wiki/Cg_(langage) '''Cg''']
* '''Les utilisateurs actifs''' sont à peu près 4800 , mais chaque personne a probablement deux comptes, ce qui signifie qu'il n'y a en réalité que 2400 utilisateurs distincts actifs.
* Ubit Umarov utilise une carte vidéo '''GeForce RTX 3070 Ti'''
{{NDLR|fond=white |bord=green|message = <br>
* J'ai une carte graphique '''GeForce GTX 1660 Ti'''
}}
== Heighmap==
* Cuga Rajal a trouvé un outil [https://manticorp.github.io/unrealheightmap/ '''Unrealheigmap'''] très utile pour créer une [[Lexique_des_réunions#Heightmap|'''heighmap''']] à partir de cartes réelles.  
* Ce générateur de heighmap a été créé  pour Unity mais fonctionne très bien pour OpenSim.  
* Il exporte en png, 16 bit. Donc 256 mètres de haut maximum.  La plupart des chargeurs ne lisent que des valeurs entières, seul r32 est à pleine échelle.
* Mais il est probablement possible d'ajuster les valeurs dans GIMP.
* Si cet outil peut exporter en 32bit virgule flottante, Vincent Sylvester a un chargeur de tiff qui lira jusqu'à 4096 mètres. Plus d'informations à propos des chargeurs : [[Réunion_du_23-07-2024#Chargeur_de_terrain_Tiff | '''Réunion du 23 juillet 2024''']] et [[Réunion_du_30-07-2024#Heightmap | '''Réunion du 30 juillet 2024''']]


=Viewers=
=== Solutions mises en œuvre et proposées ===
== Viewer Web Linden Lab==
* Description d'un script de réinitialisation de l'inventaire des avatars pour les grilles et les standalones d'OpenSimulator : https://pastebin.com/HmVaDGS5
*[https://community.secondlife.com/news/featured-news/browser-based-access-to-second-life-limited-testing-begins-today-r1559/ Accès à Second Life par navigateur : Des tests limités ont débuté]
* Il faudrait commencez par lancer le script de vérification de l'inventaire de Vincent Sylvester et corrigez les types de dossiers, cela empêchera au moins les viewers de se plaindre à ce sujet. Pour restaurer les ressources à partir des IAR, il n'est pas nécessaire de les charger, il suffit d'extraire les ressources et de les comparer à ce qu'il y a  sur le disque. Si une ressource est cassée, il suffit de remplacer les données elles-mêmes, sans toucher à la base de données.
* Il semble que le viewer web de Linden Lab est meilleur que le viewer mobile. Mais, il manque encore beaucoup d'éléments d'interface utillisateur et de fenêtres.  
* Donc, il faudrait rassemblez le maximum d'IAR des utilisateurs d'Osgrid. Ensuite, il faut extraire le dossier des assets, parcourir la base de données pour voir ce qui est cassé, et remplacer ce qui doit l'être. Si un élément d'inventaire indique que l'asset (UUID) n'a pas été trouvé, il est possible de le rechercher et le retrouver dans les données d'asset de l'IAR.
* Une interface utilisateur basée sur [https://fr.wikipedia.org/wiki/Hypertext_Markup_Language '''HTML'''] serait prévue.  
* OpenSim est basé sur une base de données, donc tout ce qui est cassé  dans l'inventaire peut être réparer avec un peu de [https://fr.wikipedia.org/wiki/Structured_Query_Language SQL]].  
* C'est un accès qui doit coûter cher à Linden Lab qui doit sans doute espèrer obtenir plus de comptes payants avec l'option web. Les serveurs nécessaires à cette mise en œuvre doivent être très chers.
* Si une solution radicale est envisagée pour éliminer complètement l'inventaire, cela pourrait entraîner de grandes pertes pour les gens, et il n'est pas évident que cela soit nécessaire. Bien que cela puisse être perçu comme un moyen de nettoyer des décennies de problèmes, il serait possible de le faire de manière plus délicate.


== Taille des textures ==
== Développeurs actifs d'OpenSim ==
=== Les développeurs principaux ===
* http://opensimulator.org/wiki/Development_Team/fr
* [https://openhub.net/p/opensimulator/contributors/summary Contributeurs]
* 🏗️
===Contact ===
* 🏗️
= Source=
= Source=
http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2025-01-28
http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2025-02-04

Version du 13 février 2025 à 09:27

Avertissement

Attention : Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux réunions du mardi ou sur le canal IRC. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉


NDLR  :
Ce schéma a été élaboré pour illustrer le flux de données lors de l'utilisation de l'inventaire dans OpenSimulator. Bien qu'il vise à représenter fidèlement le processus, des erreurs peuvent subsister. Les retours et suggestions sont les bienvenus pour améliorer cette représentation.


Code principal

Les inventaires

Code du noyau et du viewer

Structure des inventaires

Les types de dossiers et d'objets

  • La seule chose qui change avec le temps dans les inventaires sont les types de dossiers. Ils sont facilement rectifiable dans la base de données, cela ne nécessite pas d'effacer l'inventaire.
  • Les types de dossier d'inventaire sont listé dans https://bitbucket.org/opensimulator/libopenmetaverse/src/master/OpenMetaverseTypes/Enums.cs.
  • On peut les trouver aussi sur le wiki officiel d'OpenSimulateur à cette adresse.
  • Seuls les dossiers racine ont le type != -1.
  • Le seule problème connu à propos des objets eux-mêmes est la confusion entre les textures et les snapshots. Mais, cela se produit également dans les IAR. Donc, cela ne s'arrangera pas en les rechargeant.
  • Les dossiers et les objets de l'inventaire ne sont qu'une vaste référence aux ressources, ils ajoutent un peu de métadonnées, mais les tables ne stockent rien qui pourrait briser les ressources de quelque manière que ce soit. Les seuls changements connus qui ont été apportés à l'inventaire dans le sens d'une modification sont les types de dossiers et un type d'objet pour les textures/photos. Tout cela remonte à une dizaine d'années. Avant cela, nous ne pouvons pas vraiment déterminer ce que cela aurait pu être parce que git ne remonte que jusqu'à cette date.
  • L'inventaire conserve juste un UUI pour référencer un asset, il essaie donc de le récupérer. Tant que l'entrée n'est pas touchée, il essaiera simplement.

Script de création d'inventaire

Bibliothèque OpenSim

  • La bibliothèque opensim en bas de l'inventaire est fournie par la région directement.

Service d'assets

Différents types de service d'assets

  • Fsassets est un service d'assets destiné aux grandes grilles. Fsassets déduplique les assets par hachage des données du fichier. Plusieurs entrées d'assets (Ndrl : plusieurs UUID d'inventaires ) utilisent les mêmes données sur le disque. Dans fsassets original, les métadonnées sont stockées sur MySQL, les données sont stockées sur des fichiers disques. Les services d'assets peuvent également être interrompus avec des métadonnées pointant vers des données perdues. (Ndrl : c'est à dire qu'un fichier disque peut manquer ou être abimé et la base de données via l'UUID de l'inventaire ne pourra pas trouver les données nécessaires à l'affichage dans le viewer.)
  • Des systèmes similaires à Fsassets existent, comme SRAS.
  • OSGrid utilise actuellement un service d'assets propriétaire, pas celui d'opensim quelque chose de personnalisé par Melanie_T.

Réparer un serveur d'assets

Scripts de vérification des inventaires

  • Vincent Sylvester a écrit un script de vérification des inventaire. Une page de wiki OpenSimulator lui est consacrée. Ce script signale les mêmes erreurs que le viewer. La page du wiki liste les moyens de rectifier la plupart de ces erreurs.
  • D'autres problèmes que ceux signalés par le viewer ou le script de vérification peuvent exister, mais ils ne devraient pas causer directement de problèmes. En général, les erreurs de types d'éléments d'inventaire ne provoquent pas de problème d'asset.

Utilisation des IAR

  • Une IAR est juste une archive, elle contient un dossier pour la structure et les données de l'inventaire ainsi qu'un dossier contenant les assets que le collecteur d'UUID a récupéré pendant le processus de sauvegarde.
  • Vider un serveur d'assets et utiliser des IAR est une façon de nettoyer les poubelles d'un serveur d'assets, en repartant de zéro.
  • On peut également utliser des IAR pour réparer le serveur d'assets. Si vous décompressez l'IAR, vous obtiendrez un dossier d'assets contenant les données des assets référencés par les UUID qu'ils avaient lors de la création de l'IAR. Il suffit ensuite d'utiliser les données de l'asset contenu dans l'IAR pour réparer l'asset cassé (vérifier qu'il est réellement cassé) dans le serveur d'assets.
  • Il faut vérifier si les données sont cassées parce que le problème peut venir des métadonnées stockées dans la base de données et dans ce cas, cette méthode ne fonctionnera pas.
  • Ainsi, il faut demander aux utilisateurs des IARs pour aider à la récupération.
  • L'IAR peut faire des dégâts, des duplications et peut ne pas contenir les assets appropriés. Mais, tout le monde ne se soucie pas de faire une IAR. Une partie des utilisateurs peuvent ne pas se connecter depuis plusieurs années et n'en feront jamais. Parfois, (comme sur Osgrid) la sauvegarde d'IAR est si lente que beaucoup se découragent et n'en font pas.

Informations

Maintenance d'Osgrid

Problème des inventaires et assets

  • L'équipe d'OSGrid se confronte à des problèmes liés au stockage des assets de la grille.
  • Le stockage des assets d'OSGrid est saturé, et un problème de taille de bloc de système de fichiers a aggravé la situation, rendant inefficace l'utilisation de l'espace. Il semble qu'une partie du stockage des assets avait une taille de bloc de système de fichiers (cluster) trop grande, ce qui a conduit à un gaspillage d'espace important.
  • Un problème autre problème est qu'il existe beaucoup de choses très anciennes avec des types incorrects.
  • Un processus a été lancé pour réécrire tous les assets dans une taille de disque appropriée, mais cela a entrainé des pertes importantes d'assets. Il est possible que les pertes augmentent encore. Ce qui est préoccupant pour la gestion de la grille.
  • Ceph utilise une architecture distribuée, ce qui signifie que les données sont réparties sur plusieurs nœuds (serveurs) pour assurer la redondance et la tolérance aux pannes. Si la configuration n'est pas optimale, cela peut entrainer des problèmes de gaspillage d'espace.
  • Il faut trouver une solution pour nettoyer les inventaires afin de faciliter la réparation des assets, ce qui pourrait être une étape nécessaire pour résoudre les problèmes de perte de données.
  • Le vrai problème est de récupérer tous les dossiers et les items, de les valider et de les corriger et de faire cela le plus proprement possible.

État des assets d'OSGrid

  • Les inventaire de certains utilisateurs comme Gaving Hird sont affectés par la présence d'assets anciens de 2008. Il est impossible de trouver certains des éléments les plus basiques de l'avatar. Donc on ne peut rien faire pour le changer cela, l'inventaire ne trouve pas les éléments de librairie nécessaires.
  • Pour la plupart des utilisateurs, les assets sont dans le cluster et devraient fonctionner une fois la réparation du cluster terminée. On parle d'un cluster de quelques TB de données. Malheureusement, il semble que le cluster ait perdu des tonnes d'assets.
  • Osgrid est aussi confrontés à la gestion d'utilisateurs qui sont là depuis si longtemps que de nombreux changements dans la façon dont les choses fonctionnent se sont produits. Des changements venant d'OpenSim, d'autres d'osgrid, d'autres de Linden Lab, d'autres encore de divers développeurs de Viewers - et les inventaires d'Osgrid portent les marques de tout cela.
  • Orgrid doit aussi faire face à d'anciennes spécificités qui ne sont plus d'actualités mais qui ont encore des effets sur la grille.
  • Suitcase de l'hypergrid lorsqu'elle a été introduite pour la première fois a causé toutes sortes de problèmes et, c'est peut-être encore le cas.
  • OSGrid utilise actuellement un service d'assets propriétaire, pas celui d'opensim quelque chose de personnalisé par Melanie_T.

Nombre d'utilisateurs

  • D'après Hiro Protagonist un COUNT(*) sur la table des utilisateurs causerait probablement des problèmes pendant des jours avant qu'il soit terminé.
  • Ce qui est important pour une grille c'est de faire la différence entre les utilisateurs actifs et inactifs.
  • Sur le site le nombre total d'utilisateurs indiqué est 161654 à ce jour. Hiro Protagonist se demande à quel point ces chiffres sont exacts. Il pense que c'est trop peu par rapport à la réalité.
  • Les utilisateurs actifs sont à peu près 4800 , mais chaque personne a probablement deux comptes, ce qui signifie qu'il n'y a en réalité que 2400 utilisateurs distincts actifs.

Solutions mises en œuvre et proposées

  • Description d'un script de réinitialisation de l'inventaire des avatars pour les grilles et les standalones d'OpenSimulator : https://pastebin.com/HmVaDGS5
  • Il faudrait commencez par lancer le script de vérification de l'inventaire de Vincent Sylvester et corrigez les types de dossiers, cela empêchera au moins les viewers de se plaindre à ce sujet. Pour restaurer les ressources à partir des IAR, il n'est pas nécessaire de les charger, il suffit d'extraire les ressources et de les comparer à ce qu'il y a sur le disque. Si une ressource est cassée, il suffit de remplacer les données elles-mêmes, sans toucher à la base de données.
  • Donc, il faudrait rassemblez le maximum d'IAR des utilisateurs d'Osgrid. Ensuite, il faut extraire le dossier des assets, parcourir la base de données pour voir ce qui est cassé, et remplacer ce qui doit l'être. Si un élément d'inventaire indique que l'asset (UUID) n'a pas été trouvé, il est possible de le rechercher et le retrouver dans les données d'asset de l'IAR.
  • OpenSim est basé sur une base de données, donc tout ce qui est cassé dans l'inventaire peut être réparer avec un peu de SQL].
  • Si une solution radicale est envisagée pour éliminer complètement l'inventaire, cela pourrait entraîner de grandes pertes pour les gens, et il n'est pas évident que cela soit nécessaire. Bien que cela puisse être perçu comme un moyen de nettoyer des décennies de problèmes, il serait possible de le faire de manière plus délicate.

Taille des textures

Développeurs actifs d'OpenSim

Les développeurs principaux

Contact

  • 🏗️

Source

http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2025-02-04