Réunion du 22-02-2022
source : http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2022-02-22
Introduction Migration .net5
- npgsql permet aux programmes écrits en C#, Visual Basic, F# d'accéder au serveur de base de données PostgreSQL .
[11:03] Gavin.Hird @grid.xmir.org:8002 : Salut Andrew
[11:03] Andrew Hellershanks : Bonjour à tous.
[11:04] Ubit Umarov : Code de gravité Description État de suppression de la ligne de fichier du projet Erreur CS1069 Le nom de type 'PerformanceCounter' n'a pas pu être trouvé dans l'espace de nom 'System.Diagnostics'. Ce type a été transféré à un assembly 'System.Diagnostics.PerformanceCounter, Version=0.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. Pensez à ajouter une référence à cet assembly. OpenSim.Framework.Monitoring D:\Avination\test\opensim\OpenSim\Framework\Monitoring\ServerStatsCollector.cs 65 Actif
[11:04] Ubit Umarov : par exemple
[11:04] Ubit Umarov : les compteurs de performance ont également disparu.
[11:04] Andrew Hellershanks : Je me suis assoupi après le déjeuner jusqu'à ce que mon Assistant numérique personnel me rappelle l'heure par un bip.
[11:04] Ubit Umarov : cela signifie aussi que certains de nos codes de statistiques ont disparu.
[11:05] Ubit Umarov : sur la migration vers .net5
[11:05] Kayaker Magic : J'ai entendu dire que Mike Chase a réussi à compiler OpenSim et à le faire fonctionner avec .net sur des serveurs Windows, mais il a été surpris de constater que le code résultant ne fonctionne pas sur linux.
[11:05] Ubit Umarov : La partie la plus effrayante est l'API qui ressemble à la même chose, mais qui ne l'est pas.
[11:06] Ubit Umarov : eh bien! pour faire cela il devra enlever des choses comme
[11:06] Ubit Umarov : la carte du monde
[11:06] Ubit Umarov : etc...
[11:06] Ubit Umarov : puis réécrire avec des bibliothèques alternatives...
[11:07] Ubit Umarov : les textures lludp sont également mortes.
[11:07] Ubit Umarov : bien comme je l'ai dit, une tonne de choses.
[11:07] Ubit Umarov : je ne suis pas sûr que tu aies vraiment lu qu'il l'avait fait.
[11:07] Ubit Umarov : Je sais qu'il y travaille.
[11:08] Ubit Umarov : de mon côté, aussi comme je l'ai dit, pas de précipitation.
[11:08] Ubit Umarov : il ne faut pas se précipiter.
[11:08] Andrew Hellershanks : C'est un peu bizarre que Microsoft(MS) fasse de tels changements dans .net 5 au point de casser complètement le code du passé.
[11:08] Ubit Umarov : ohh vous devriez voir .netcore 2
[11:08] Ubit Umarov : encore pire
[11:08] Ubit Umarov : même 3
[11:09] Ubit Umarov : c'est à ce moment que MS a vu qu'ils ne pouvaient pas forcer tout le monde à réécrire toutes les applications.
[11:09] Ubit Umarov : donc ils ont ajouté beaucoup plus de .net4.8 dessus.
[11:10] Andrew Hellershanks : Je me demande s'ils ont vu le problème en interne. Cela les a probablement incités à faire quelque chose à ce sujet.
[11:10] Ubit Umarov : mais il y a encore beaucoup de choses qui manquent, comme les images, etc...
[11:10] Ubit Umarov : les parties qu'ils ont ajoutées... pour Windows seulement.
[11:10] Ubit Umarov : net5-0-windows a un code image.
[11:10] Misterblue Waves : je me demande si PrimMesher et libomv peuvent être mis à jour vers .NET6... c'est un projet de week-end.
[11:11] Ubit Umarov : même problème.
[11:11] Ubit Umarov : impossible
[11:11] Ubit Umarov : ça dépend des bitmaps
[11:11] Ubit Umarov : et d'autres choses encore
Modifications dans la base de données
- NuGet: gestionnaire de paquets de la plate forme de développement Microsoft .NET.
[11:11] Vincent.Sylvester @hg.zetaworlds.com:8002 : En parlant de librairies alternatives, je me suis posé l'autre jour et j'ai cloné les interfaces Mysql et réécrit les migrations pour changer un tas de champs varchar et char en UUID commec'est maintenant supporté par MariaDB. Les tests unitaires passent, bien qu'ils utilisent toujours le connecteur Mysql par défaut et je n'ai pas fait beaucoup de tests pour savoir si toutes les parties fonctionnent. Ubit a cherché un connecteur MariaDB directement, mais il semble que, tout comme npgsql plus récent, il soit livré avec un tas de librairies stupides. J'ai vérifié la longueur des tables et dans l'ensemble des tables, j'ai économisé plus de 280 octets juste en changeant ces champs, ce qui revient à près de 30% de la taille de la structure globale.
[11:13] Misterblue Waves : J'ai utilisé MariaDB comme base de données. Pas de problèmes, mais je ne suis pas un testeur de gros chargements.
[11:14] Ubit Umarov : maria est maintenant ce que les distros aiment.
[11:14] Andrew Hellershanks : C'est le cas depuis un certain temps.
[11:14] Ubit Umarov : je suppose que c'est comme ça depuis qu'Oracle a pris le contrôle de Mysql.
[11:15] Andrew Hellershanks acquiesce.
[11:15] Vincent.Sylvester @hg.zetaworlds.com:8002 : MariaDB 10.7 est sorti la semaine dernière, il y a maintenant le type de champ UUID, qui est un peu plus petit en taille pour stocker les UUIDs, le truc c'est que, pour en tirer avantage, il faut trouver un moyen de s'interfacer avec lui à un niveau plus bas que de pousser des chaînes de caractères afin d'obtenir des performances, le simple fait de changer les champs en UUID réduit juste la taille de la base de données en général, les performances des requêtes pas tellement.
[11:16] Vincent.Sylvester @hg.zetaworlds.com:8002 : Il faut une conversion binaire directe ou quelque chose pour s'interfacer avec la lui, mais pour cela il faut un connecteur et celui qui est sur nuget a besoin de quelques bidouillages pour fonctionner.
Problème des bibliothèques d'images avec Mono
- Mono : mise en œuvre open source (sous licence GNU GPL, GNU LGPL ou X11 selon les éléments) de la plateforme de développement Microsoft .NET. Mono est utilisé entre autre sur les systèmes d'exploitation Linux pour lancer OpenSimulator.
[11:12] Ubit Umarov : ms a refusé de supporter l'image sur toutes les plateformes, comme linux.
[11:12] Ubit Umarov : à cause de libgdiplus, Cairo, etc.
[11:12] Ubit Umarov : ils refusent d'assurer la maintenance
[11:12] Ubit Umarov : un peu compréhensible
[11:13] Misterblue Waves : certains problèmes ne devraient pas être volontaires.
[11:13] Ubit Umarov : le Cairo et le Pango...
[11:16] Andrew Hellershanks : Si le code utilise cairo, pango, etc., ils devraient toujours être utilisables dans le code du système d'exploitation en tant que bibliothèques externes.
[11:16] Ubit Umarov : comme je vous l'ai dit, il faut diviser la base de données.
[11:16] Ubit Umarov : et utiliser un autre connecteur.
[11:17] Ubit Umarov : bitmap sur mono dépend de pango, cairo et libgdiplus
[11:17] Ubit Umarov : que MS refuse d'utiliser
[11:17] Ubit Umarov : donc pas de code image pour linux sur .net5 ou 6
[11:17] Ubit Umarov : comme je l'ai dit .netx-windows l'a... windows seulement
[11:18] Andrew Hellershanks : Pourquoi le code ne peut pas utiliser ces bibliothèques de toute façon même si MS ne les supporte pas dans .net ?
[11:18] Ubit Umarov : parce qu'ils n'ajouteront pas à .net, le code qui dépend des bibliothèques qu'ils refusent d'utiliser.
[11:18] Gavin.Hird @grid.xmir.org:8002 : il n'y a pas d'argent là-dedans.
[11:18] Andrew Hellershanks : D'autres projets utilisent cairo, pango, etc. donc ces bibliothèques sont toujours là.
[11:19] Gavin.Hird @grid.xmir.org:8002 : MS a toujours cherché à enfermer ses utilisateurs.
[11:19] Ubit Umarov : et le code .netx est aussi pour android et ios.
[11:19] Andrew Hellershanks : Cela n'a aucun sens. Si vous utilisez .NET, vous n'avez aucun moyen d'utiliser une bibliothèque tierce ?
[11:20] Ubit Umarov : il semble qu'ils pensent aussi que personne ne l'utilise vraiment.
[11:20] Ubit Umarov : il semble que certains disent de ne voir que le code pour faire le q-code :)
[11:20] Ubit Umarov : ils disent d'utiliser d'autres bibliothèques d'images pour .net
[11:21] Ubit Umarov : bien
[11:21] Ubit Umarov : cela veut dire que tout notre code devra être réécrit.
[11:21] Ubit Umarov : code jpeg2000, maps scultp... maps... etc...
[11:22] Ubit Umarov : textures dynamiques
[11:22] Vincent.Sylvester @hg.zetaworlds.com:8002 : Beaucoup de ces choses sont assez abstraites aussi, comprendre comment cela fonctionne actuellement est une grosse tâche en soi, et encore moins la réécrire.
[11:22] Ubit Umarov : tout est perdu, jusqu'à une réécriture avec autre chose.
[11:22] Ubit Umarov : je pense que j'ai seulement listé des choses concrètes.
[11:22] Misterblue Waves : quelles sont les plateformes cibles "supportées" ? Window10/11, Ubuntu (mono6), IOS ?
[11:23] Andrew Hellershanks : La solution la plus simple est d'écrire notre propre code pour remplacer les bits manquants/non supportés afin que le code principal n'ait pas besoin d'être complètement réécrit.
[11:24] Vincent.Sylvester @hg.zetaworlds.com:8002 : Andrew, tu veux écrire une bibliothèque d'images, bien sûr, je vais programmer la soirée de lancement, on se voit en 2035.
[11:24] Ubit Umarov : bien et toujours pas besoin de se précipiter.
[11:24] Ubit Umarov : malheureusement le mono a perdu beaucoup de correctifs mais il est toujours là.
[11:24] Ubit Umarov : donc pas besoin de se précipiter.
[11:25] Ubit Umarov : tout changement vers .net5(6 signifie aussi la perte de beaucoup de bon matériel.
[11:25] Andrew Hellershanks : Si le .NET actuel/ancien utilise pango, cairo, etc. Pourquoi ne pas simplement faire une bibliothèque qui est une interface entre le code actuel et les bibliothèques backend qui étaient déjà utilisées ?
[11:25] Ubit Umarov : juste parce que ce matériel ne peut pas faire tourner le dernier Windows.
[11:25] Ubit Umarov : ou même le dernier linux
[11:25] Andrew Hellershanks : Que dit MS aux développeurs pour le passage à .NET 5/6 ? Réécrivez vos programmes ?
[11:26] Vincent.Sylvester @hg.zetaworlds.com:8002 : Je suis plus préoccupé par le fait que la dernière version de mono ne supporte plus postgres sans changements massifs, je ne suis pas sûr que mysql ne suive pas bientôt.
[11:26] Ubit Umarov : oui, c'est ce qu'ils disent.
[11:26] Ubit Umarov : comme je l'ai dit, la situation était bien pire à l'époque de .netcore 2.0.
[11:26] Misterblue Waves : @Andrew c'est vrai que nous n'utilisons pas toutes les fonctionnalités d'Image. La plupart des trucs qui "ne seront pas supportées" tournent autour des fonctions qui touchent aux images et modifient les formats internes (pour la performance et autres).
[11:26] Ubit Umarov : parce que la plupart du code ne fonctionne pas dessus.
[11:26] Andrew Hellershanks : S'ils continuent à faire ça, c'est une excellente démonstration pour expliquer pourquoi vous ne devriez pas utiliser .NET dans vos programmes.
[11:27] Ubit Umarov : allez dire aux développeurs originaux d'opensim que le choix de c# était un choix très stupide.
[11:27] Vincent.Sylvester @hg.zetaworlds.com:8002 : A ce moment là, on pourrait aussi bien réécrire en C directement et jeter la dépendance au framework par la fenêtre, mais bon sang, ça a l'air amusant... non !
[11:27] Ubit Umarov : c'était très stupide, mais trop tard pour changer.
[11:28] Ubit Umarov : bien sûr, commencer une telle chose en c++ avec le support multi.os était beaucoup plus difficile à faire.
[11:28] Gavin.Hird @grid.xmir.org:8002 : quelqu'un doit télécharger le code du serveur SL :-)
[11:29] Ubit Umarov : tellement facile que personne ne l'aurait fait.
[11:29] Ubit Umarov : sans la promesse originale c# de fonctionner (mal) sur windows et linux
[11:29] Andrew Hellershanks : Je n'ai pas fait assez de programmation en C# pour réaliser qu'il faut utiliser .NET.
[11:29] Ubit Umarov : et jusqu'à présent ça marchait...
[11:30] Ubit Umarov : il n'y a pas de c# sans .net.
[11:30] Ubit Umarov : fondamentalement.
[11:30] Ubit Umarov : en tout cas, certaines parties essentielles.
[11:30] Ubit Umarov : nous ne pouvons pas utiliser linq par exemple.
[11:31] Vincent.Sylvester @hg.zetaworlds.com:8002 : La seule option est mkbundle, qui consiste à insérer .net dans l'application, ce qui augmente sa taille et ne garantit pas non plus son fonctionnement, surtout pas aux niveaux de complexité d'OpenSim.
[11:31] Ubit Umarov : mais assez de discussions académiques.
[11:31] Ubit Umarov : maintenant c'est le c# et c'est comme ça.
[11:31] Ubit Umarov : juste un dur chemin à parcourir.
[11:31] Ubit Umarov : mais encore une fois, pas besoin de se précipiter.
[11:31] Vincent.Sylvester @hg.zetaworlds.com:8002 : Bien difficile si MS décide de continuer à gâcher le plaisir.
[11:31] Ubit Umarov : plus nous attendons, plus cela devrait être facile.
[11:31] Ubit Umarov : je l'espère.
[11:32] Ubit Umarov : parce que d'autres le feront :p
[11:32] Vincent.Sylvester @hg.zetaworlds.com:8002 : Je suis assez fou pour espérer qu'ils finissent par avoir un cerveau.
[11:32] Andrew Hellershanks: :)
[11:32] Ubit Umarov : tous les logiciels sont de plus en plus fous.
[11:32] Vincent.Sylvester @hg.zetaworlds.com:8002 : Je blâme javascript
[11:33] Ubit Umarov : et les gens seront obligés de réécrire les choses.
[11:33] Andrew Hellershanks: hehe
[11:33] Ubit Umarov : Je ne sais pas.
[11:33] Ubit Umarov : je pense que nous avons 2 ans pour voir le problème du .net6.
[11:34] Ubit Umarov : possible plus
Changements dans OpenSim cette semaine
[11:34] Ubit Umarov : à propos d'opensim
[11:34] Ubit Umarov : pas beaucoup de changements la semaine dernière, je pense.
[11:34] Ubit Umarov : en fait, j'ai failli sortir la 0.9.2.1 aujourd'hui.
[11:35] Ubit Umarov : la date du 22-2-22 était une date de sortie amusante.
[11:35] Vincent.Sylvester @hg.zetaworlds.com:8002: hehe
[11:35] Vincent.Sylvester @hg.zetaworlds.com:8002 : Je n'avais même pas remarqué ça.
[11:35] Andrew Hellershanks : Juste un changement cette semaine dans le module profiles et une correction d'un message de log.
[11:36] Ubit Umarov : j'ai mis à jour libomv avec un code plus rapide de l'OSD à json.
[11:36] Andrew Hellershanks : Pour moi, ce serait une date de version le 2-22-22. Pas aussi amusante mais presque.
[11:36] Ubit Umarov : et c'était en gros ça.
[11:36] Kayaker Magic : J'ai une question sur la dé-duplication. Est-ce qu'OpenSim fait cela sur les images ? J'ai entendu dire que Kitely le fait.
[11:37] Ubit Umarov : on dirait qu'il faut laver ces oreilles pour avoir l'info complète.
[11:37] Ubit Umarov: :p
La déduplication des assets
[11:37] Vincent.Sylvester @hg.zetaworlds.com:8002 : La déduplication sur les assets est faite sur la base d'un hachage, si le hachage est le même, l'élément est juste lié via la BD, les textures dynamiques et autres sont côté région donc elles sont effacées de toute façon.
[11:37] Andrew Hellershanks : Kayaker, il existe un système d'assets qui élimine les doublons.
[11:37] Ubit Umarov: fsassets
[11:38] Ubit Umarov: et xassets
[11:38] Ubit Umarov : ou comment on l'appelle.
[11:38] Vincent.Sylvester @hg.zetaworlds.com:8002 : sras et phpsas le font aussi :)
[11:38] Andrew Hellershanks : Ouais, fsassets.
[11:38] Andrew Hellershanks : SRAS est venu avant fsassets.
[11:38] Ubit Umarov : oui fsassets est une version c# de sras.
[11:38] Ubit Umarov : en gros
[11:39] Ubit Umarov : xassets le fait, mais le stockage se fait toujours sur mysql.
[11:39] Ubit Umarov : encore marqué expérimental.
[11:39] Kayaker Magic : Quand le hachage des images est-il calculé ? Après le décodage des images en bitmaps bruts ?
[11:40] Ubit Umarov: sha256
[11:40] Ubit Umarov : les données de l'asset SL
[11:40] Ubit Umarov : et exactement comme l'asset de SL.
[11:40] Ubit Umarov : une chose amusante dont les gens parlent et que les viewers oublient.
[11:41] Ubit Umarov : nous n'avons que des assets au format SL.
[11:41] Kayaker Magic : Donc après les avoir compressé pour la base de donnée des assets ? Est-ce que c'est un zip ou les images sont juste compressées en jpg2000 ?
[11:41] Ubit Umarov : toute conversion vers d'autres formats est impossible à faire en temps réel.
[11:41] Ubit Umarov : à moins que ce ne soit pour des petits concepts.
[11:41] Ubit Umarov : en fait pas besoin, car il n'y a pas de concept à valider.
[11:42] Ubit Umarov : pour utiliser d'autres formats, le stockage des assets devra être modifié pour les ajouter.
[11:43] Ubit Umarov : Eh bien, le viewer d'avination unreal utilisait des formats de ressources SL.
[11:43] Misterblue Waves : oui... nouveau serveur d'assets. Nouveaux formats, nouvelles permissions d'accès, évolutif... tout un autre projet.
[11:44] Ubit Umarov: Oui
[11:44] Misterblue Waves : dans les viewers existantes, la conversion du format des assets SL vers un format utilisable est entièrement faite dans le client.
[11:44] Ubit Umarov : un UUID d'asset devra pointer vers plusieurs formats.
[11:44] Ubit Umarov : comme une texture en jp2000 et dds
[11:45] Misterblue Waves : peut-être en faire un plugin nginx.
[11:45] Ubit Umarov : bien etle faire RAPIDEMENT.
[11:45] Ubit Umarov : la partie RAPIDE est quelque chose que tout le monde oublie.
[11:45] Ubit Umarov : et sans cela, c'est inutile.
Viewers
[11:46] Ubit Umarov : nous savons tous que n'importe quel viewer peut être fait...
[11:46] Ubit Umarov: celui d'unreal was should most of a region
[11:46] Ubit Umarov : à 6fps ! !!
[11:46] Ubit Umarov : donc un beau travail... inutile... mais beau.
[11:47] Ubit Umarov : fs rend la même région avec 40 fps et fait tout ce qu'il faut.
[11:47] Ubit Umarov : vous voyez ce que je veux dire ?
[11:48] Ubit Umarov : err ça m'aiderait si je tapais correctement :p
[11:48] Ubit Umarov : celui d'unreal rendait une région à 6fps :)
[11:48] Ubit Umarov : toujours pas de terrain, d'eau ou d'avatars.
[11:48] Vincent.Sylvester @hg.zetaworlds.com:8002 : Pendant ce temps, la nouvelle version de FS semble améliorer les performances d'un bon 10% d'après ce que je peux dire, je ne me rappelle pas avoir jamais obtenu plus de 60fps ici.
[11:49] Ubit Umarov : Il améliore les performances.
[11:49] Ubit Umarov : ils ont un autre lot de changements pour un prochain viewer.
[11:49] Ubit Umarov : fs est en train de les ajouter ainsi que quelques autres.
[11:50] Ubit Umarov : bien sûr, cela dépend des créateurs de régions.
[11:50] Ubit Umarov : vous devrez faire attention à la construction de la région si vous voulez des fps.
[11:50] Ubit Umarov: and have customs police :p [11:51] Ubit Umarov: not letting avatars with complexity off 700000 to get in [11:51] Ubit Umarov: :) [11:51] Andrew Hellershanks: :) [11:52] Ubit Umarov: so what news do you bring ? [11:52] Ubit Umarov: about opensim.. [11:52] Andrew Hellershanks: No news is good news? ;) [11:53] Andrew Hellershanks: Will there be a release today? [11:53] Ubit Umarov: if about ukraine yes [11:53] Ubit Umarov: nah guess i will not do it today [11:54] Ubit Umarov: osgrid also did none on 0.9.2.1 basicly [11:55] Ubit Umarov: but diva is waiting for it to release her code [11:56] Ubit Umarov: i had promissed her a reease in Jan [11:56] Ubit Umarov: and we are almost in march :) [11:56] Gavin.Hird @grid.xmir.org:8002: but what year? [11:57] Ubit Umarov: yeah i didn't told her the year.. but she assumed 2022 :) [11:57] Gavin.Hird @grid.xmir.org:8002: :-) [11:57] Ubit Umarov: so i can't use that trick on her :p [11:58] Ubit Umarov: well and the users that are asking for the code [11:58] Gavin.Hird @grid.xmir.org:8002: they must be begging, asking will not do [11:59] Ubit Umarov: :) [11:59] Andrew Hellershanks: Wow. This hour has just flown by. We are at the top of the hour already. [12:00] Andrew Hellershanks: Any final questions or comments for today before we wrap up this gathering? [12:02] Andrew Hellershanks: Kayaker, fyi, in a large database a hash based asset storage system can reduce the asset table substantially. I've seen anywhere from 25% to 50% reductions in table size. [12:02] Ubit Umarov: sadly if table size means nothing :p [12:03] Ubit Umarov: ofc tables size is smaller, just because the asset data is not stored on it, but on a disk file [12:03] Kayaker Magic: I was curious that hashes of images are so likely to be different for similar images. [12:03] Andrew Hellershanks: yes, but it is a substantial savings in used disk space. [12:04] Kayaker Magic: And I don't trust jpg to produce the same imagage from the same data 2ice in a row... [12:04] Ubit Umarov: guess a lot of ppl uploads the same things [12:04] Ubit Umarov: well it is not jpg, it is jpeg2000, a bit diferent [12:05] Ubit Umarov: and with paramenters fixed on viewers [12:05] Ubit Umarov: so end data may be more identick [12:05] Ubit Umarov: other wise, the hash is just waste of time [12:05] Ubit Umarov: same for mesh.. [12:06] Ubit Umarov: hash only does anything if mesh is upload with same paramenters and identical viewer [12:06] Ubit Umarov: so finla bits are exactly the same [12:06] Ubit Umarov: or then again hashing is uselsss [12:07] Ubit Umarov: so in fact o do have doubts on how effective it really is [12:07] Ubit Umarov: but ppl tell it is.. so.. one must believe,, [12:08] Ubit Umarov: and good viewers do not add Cretion date and uploader uuid to the binary data [12:08] Ubit Umarov: assuming region code will do it ( and does not ) [12:08] Ubit Umarov: if mesh where as spec, the hash would fail always [12:09] Kayaker Magic: Some sort of hash that only looks at the image data, or vertex data of mesh would be nice. [12:09] Misterblue Waves: gonna run in RL.. will be here virtually [12:09] Ubit Umarov: no [12:09] Ubit Umarov: hash only looks to raw asset data [12:09] Andrew Hellershanks: ok, Misterblue. [12:09] Ubit Umarov: cna't look to asset details [12:09] Vincent.Sylvester @hg.zetaworlds.com:8002: Somewhere in this mess someone set xml utf16 for linksets even if all data is utf8 -.- [12:09] Ubit Umarov: no time for that [12:10] Ubit Umarov: nahh think most are actually utf8 telling they are utf16 [12:10] Gavin.Hird @grid.xmir.org:8002: are you sure it cannot look at asset data? [12:10] Ubit Umarov: not was it is done [12:10] Vincent.Sylvester @hg.zetaworlds.com:8002: Yeah that's what I mean, the xml header claims utf16 for no reason, threw me off at first [12:10] Ubit Umarov: and no.. would be very slow to look per asset type [12:10] Gavin.Hird @grid.xmir.org:8002: on postgres I have a tool that when looking at single records will decode the images in the asset table on the fly [12:11] Gavin.Hird @grid.xmir.org:8002: they are just stored in a blob filed [12:11] Ubit Umarov: even doing sha256 is not that fast [12:12] Ubit Umarov: some cpus do have hardware help for that.. not sure .net uses [12:12] Gavin.Hird @grid.xmir.org:8002: you only have to do it on first write in that table [12:12] Ubit Umarov: no [12:12] Ubit Umarov: on any upload [12:12] Gavin.Hird @grid.xmir.org:8002: sure, but uploads does not happen that often [12:13] Ubit Umarov: and does not matter [12:13] Ubit Umarov: any bit changed means other hash [12:13] Andrew Hellershanks: yup [12:13] Ubit Umarov: for now we are not filling the creation date, and creator id of mesh spec [12:13] Gavin.Hird @grid.xmir.org:8002: image data cannot be edited in-world, so only uploads needs to be rehased [12:13] Ubit Umarov: so at least that is not a issue [12:14] Ubit Umarov: even so same mesh even with same parameters will upload diferently [12:14] Ubit Umarov: acording to particular viewer [12:14] Gavin.Hird @grid.xmir.org:8002: yes [12:14] Gavin.Hird @grid.xmir.org:8002: but image data should be fairly constant [12:15] Ubit Umarov: but well as i said seems that hash does savings.. so.. better than nothing [12:15] Ubit Umarov: jpeg2000 constant why? [12:15] Gavin.Hird @grid.xmir.org:8002: there are not many updates to that spec... [12:15] Ubit Umarov: done with diferent versions of openjpeng on kdu [12:15] Gavin.Hird @grid.xmir.org:8002: we don't use kdu [12:16] Gavin.Hird @grid.xmir.org:8002: no viewer does for opensim [12:16] Ubit Umarov: thin lower precision bits [12:16] Ubit Umarov: just think... [12:16] Ubit Umarov: thin fs payed kdu [12:16] Ubit Umarov: think [12:16] Gavin.Hird @grid.xmir.org:8002: nobody are interested in paying thousands of dollars for a KDU lisence for opensim [12:17] Gavin.Hird @grid.xmir.org:8002: fs got KDU from LL [12:17] Ubit Umarov: it is not for opensim [12:17] Ubit Umarov: is for all [12:17] Gavin.Hird @grid.xmir.org:8002: Kokua paid for [12:17] Andrew Hellershanks: kdu? [12:17] Ubit Umarov: viewers do not pay kdu for sl or opensim [12:17] Ubit Umarov: that is not like havok [12:17] Gavin.Hird @grid.xmir.org:8002: they pay for KDU [12:17] Ubit Umarov: they pay per viewer [12:18] Gavin.Hird @grid.xmir.org:8002: with no chance of getting the cost covered for opensim, nobody will want to pay for it [12:18] Ubit Umarov: so if they pay "for sl" they payed "for opensim" [12:18] Andrew Hellershanks: I looked up kdu and the top result was General Sir John Kotelawala Defence University. :) [12:18] Ubit Umarov: unlike havok, where they just use LL license [12:18] Gavin.Hird @grid.xmir.org:8002: yes, but the only one who have paid for KDU is kokua [12:18] Gavin.Hird @grid.xmir.org:8002 whispers: FS got it from LL [12:19] Ubit Umarov: ok [12:19] Gavin.Hird @grid.xmir.org:8002: apart from that nobody use it because of cost [12:19] Ubit Umarov: yeha fs ships with openjpg for opensim [12:19] Gavin.Hird @grid.xmir.org:8002: yes [12:20] Gavin.Hird @grid.xmir.org:8002: not allowed to use the license outside of SL [12:21] Gavin.Hird @grid.xmir.org:8002: so I have had to strip the KDU support out of the 3.0 builds [12:22] Ubit Umarov: well all those diferences make the deduplication fail [12:22] Ubit Umarov: not going to the detail of all cpu FPUs are diferent etc [12:23] Ubit Umarov: intel things have bugs remember ? :P [12:24] Ubit Umarov: so i have no real numbers on how good is fs deduplication good [12:24] Ubit Umarov: hope it does dedupe the "new script" :p [12:25] Vincent.Sylvester @hg.zetaworlds.com:8002: Good question, I know it certainly doesn't do notecards, cause they have creation date and such saved in their data so the hash is always different [12:25] Ubit Umarov: yeah [12:25] Vincent.Sylvester @hg.zetaworlds.com:8002: I wrote an article on the garbage OpenSim collects on these things [12:25] Ubit Umarov: some assets have date etc [12:25] Ubit Umarov: mesh where suposed to have [12:26] Ubit Umarov: but it is server job to add those, and we never did [12:26] Ubit Umarov: not sure what viewers add to the jpeg2000 metadada [12:27] Ubit Umarov: possible also date and creator there, making ghe hash useless on mesh [12:27] Ubit Umarov: on texture i mean [12:27] Ubit Umarov: wel easy for you to check if using fsassets :) [12:28] Ubit Umarov: upload same textyre twcie and compare the hashs [12:29] Ubit Umarov: not sure if who made sras and fsassets knew the metadata viewers add [12:30] Gavin.Hird @grid.xmir.org:8002: I don't think the viewer adds any metadata to the raw imagedata [12:30] Ubit Umarov: well it is j2000 data not raw image [12:31] Gavin.Hird @grid.xmir.org:8002: you understand what I mean [12:31] Ubit Umarov: ok :) [12:31] Ubit Umarov: like crreation data on the info areas of the j2k [12:33] Ubit Umarov: animation seems to be just anim [12:34] Selby.Evans @grid.kitely.com:8002: bye all [12:34] Ubit Umarov: cya [12:34] Andrew Hellershanks: Another half hour has passed. I need to get going so I will close the meeting for today. Thank you all for coming. See you again next week.