Skip to content

Bug Report: hg_traveling_data incorrectly created for local residents on HG-enabled grids #199

Description

@mteedev

Summary

On HG-enabled OpenSim grids, local residents are incorrectly getting entries created in the hg_traveling_data table with GridExternalName pointing to their own grid's HG endpoint (e.g. http://hg.mygrid.com:8002/). This causes OpenSim to treat local residents as Hypergrid visitors to their own grid, resulting in serious user-facing issues.

Version

OpenSim-Tranquillity 0.9.3.x (also likely affects standard OpenSim builds)

Environment

  • HG-enabled grid (residents travel out to other grids and HG visitors are welcomed)
  • Robust server with standard HG configuration
  • Multiple region servers

Steps to Reproduce

  1. Run an HG-enabled OpenSim grid
  2. Have local residents teleport between regions normally (no HG travel)
  3. After some time, query the hg_traveling_data table:
SELECT DISTINCT h.UserID, u.FirstName, u.LastName, h.GridExternalName, h.TMStamp
FROM hg_traveling_data h
LEFT JOIN UserAccounts u ON h.UserID = u.PrincipalID
WHERE h.GridExternalName LIKE '%yourgridname%'
ORDER BY h.TMStamp DESC;
  1. Observe local residents appearing with GridExternalName set to the grid's own HG endpoint

Expected Behavior

hg_traveling_data should only contain records for visiting HG travelers from OTHER grids. Local residents should never appear in this table with their own grid listed as the external grid.

Actual Behavior

Local residents accumulate hg_traveling_data records with GridExternalName pointing to their own grid's HG endpoint. These records are created during normal local teleports and region crossings — no actual HG travel is involved.

Scale of the problem observed:

  • 85 stale self-referencing records found on initial audit
  • 68 new records created within just 5 days after cleanup
  • Approximately 20+ unique local residents affected per week

Symptoms Caused

When a local resident has one of these stale records, they experience:

  1. Avatar name displayed as HG visitor format — Firstname Lastname@mygrid.com:8002 instead of Firstname Lastname
  2. Crashes on teleport — especially when attempting to reach their own region
  3. Unable to reach own region — teleport fails entirely
  4. Login issues — avatar cannot log in or appear properly
  5. Semi-detachment from grid — avatar appears to partially disconnect after spending time in busy regions
  6. Cannot send messages or use voice in some cases

Symptoms affect both new and old avatars. They are reproducible and consistent — the same avatar experiences the same issues every time until the stale record is deleted.

Important: The issue is NOT viewer-specific, NOT cache-related, and NOT PC-specific. The same avatar experiences the issue on multiple computers and viewers. A different account on the same PC/viewer works fine.

Workaround

Manually delete the stale records:

DELETE FROM hg_traveling_data 
WHERE GridExternalName LIKE '%yourgridname%';

This immediately resolves all symptoms for affected residents (after they log out and back in). However records re-accumulate within days, requiring regular cleanup.

A daily cron job running this query is necessary as a temporary mitigation.

Suspected Root Cause

When a local resident teleports between regions — particularly during region crossings, sim restarts, or when visiting regions with instability (e.g. dual screen sessions) — the HG service appears to incorrectly classify the session as a Hypergrid arrival and creates a hg_traveling_data record. Since the resident's home URI resolves to the grid's own HG endpoint, the GridExternalName is populated with the grid's own address.

The HG service does not appear to correctly distinguish between:

  • A local resident crossing into a new region
  • An actual HG visitor arriving from an external grid

Additional Notes

  • The problem is significantly worse near regions that have had restart issues or dual screen sessions running simultaneously
  • Govega Sachertorte (grid owner/superadmin) is among the affected avatars — this is not isolated to regular residents
  • The issue appears to have worsened after upgrading to 0.9.3.x

Request

A fix that prevents hg_traveling_data records from being created for local residents making normal local teleports. The HG service should verify that the arriving avatar's home URI does not match the local grid's own endpoint before creating a travel record.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions