Aller au contenu

Réunion du 10-03-2026

De OSWiki

Changements du code de la semaine

Impact sur la mémoire et le temps

Commit

  • Commit d3f314 : Le délai d'attente du flux httpclient est ignoré lors de la désérialisation xml, ce qui entraîne un gaspillage de mémoire et de temps pour tout charger en mémoire au préalable.

Problème

  • Problème de récupération des images de profil Hypergrid qui se produisait tous les quelques jours pour la région lbsa d'OSGrid.

Discussion

  • Fonctionnement avant modification :
  1. La lecture HHTP alloue un tampon suffisamment grand pour contenir toutes les données possible.
  2. Ensuite, la quantité de données reçues est copiée dans un autre tableau
  3. Le tableau est renvoyé.
  4. La version temporaire reste en place jusqu'à ce que GC estime qu'elle n'est plus nécessaire. Par défaut, ce tableau temporaire est de 2 Go. Contrairement à ce qu'on peut attendre, il n'y a PAS de délai d'expiration sur ce flux. Quelque part dans les modifications asynchrones (utilisées même sur les appels synchrones), Microsoft a supprimé le délai d'expiration NetworkStream.
  • Ubit Umarov a limité les 2Go à 256 Mo ce qu'il estime encore être beaucoup.
  • Il a également essayé d'ajouter un timer pour tuer le flux, ce qui d'après lui n'est pas la solution idéale car de la mémoire est gaspillée, et c'est encore un autre timer, mais c'est mieux que le blocage des 256 Mo.
  • 🏗️

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


Code général

Scripts

Base de données/Stockage /fsassets

Modules

Bugs

Tests

Projets en cours / Infos

Viewers

Source

http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2026-03-10