You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 28, 2024. It is now read-only.
For an element of a scripted game that I host, I poll region status and region coordinates for over a decade. Ever since the most recent server release ( https://releasenotes.secondlife.com/simulator/2022-02-10.568388.html ), there have been intermittent failures using llRequestSimulatorData() where requests for data are silently dropped.
I have made changes to my system to address the issue, in case I was running up against new undocumented throttles; and because it was a decade old. The errors still persist. Here is a much simpler sample of my script that produces the same errors.
---- Sample Script ----
integercheck_index;
integercheck_mode = 1;keyreg_online;
keyreg_location;listregion_names = [
"The Rot",
"Cormac", "HamboneSlough", "FortStygian", "TheGreatFissure",
"The Wastelands",
"The Junkyard",
"The Sand Seas",
"North Yard",
"Burnt Oak"
];
listregion_coords = [
<201472., 265216., 0.>, // The Rot
<201216., 265216., 0.>, // Cormac
<200960., 265472., 0.>, // Hambone Slough
<201472., 265472., 0.>, // Fort Stygian
<201216., 265472., 0.>, // The Great Fissure
<201216., 265728., 0.>, // The Wastelands
<201472., 265728., 0.>, // The Junkyard
<200960., 265216., 0.>, // The Sand Seas
<201472., 265984., 0.>, // North Yard
<201216., 265984., 0.> // Burnt Oak
];default {
state_entry() {
check_mode = 1;
check_index = llGetListLength(region_names);
reg_online = llRequestSimulatorData(llList2String(region_names, --check_index), DATA_SIM_STATUS);
llResetTime();
llSetTimerEvent(10.);
} dataserver(keyqueryid, stringdata) {
llSleep(1. / 45.);
if (queryid == reg_online) {
llSetTimerEvent(10.);
if (~check_index) {
llSetText(llList2String(region_names, check_index) + ": " + data + "\n" + (string)llGetTime(), <0.0, 1.0, 1.0>, 1.0);
if (llToLower(data) != "up") {
// I do error stuff here.
}
--check_index;
} if (~check_index) {
reg_online = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_STATUS);
} else {
check_mode = 2;
check_index = llGetListLength(region_names);
reg_location = llRequestSimulatorData(llList2String(region_names, --check_index), DATA_SIM_POS);
}
} elseif (queryid == reg_location) {
llSetTimerEvent(10.);
if (~check_index) {
llSetText(llList2String(region_names, check_index) + ": " + data + "\n" + (string)llGetTime(), <0.0, 1.0, 1.0>, 1.0);
if ((vector)data == ZERO_VECTOR) {
llInstantMessage(llGetOwner(), llList2String(region_names, check_index) + " is reporting as ZERO_VECTOR");
// I do error stuff here.
} else {
region_coords = llListReplaceList(region_coords, [(vector)data], check_index, check_index);
}
}
--check_index;
if (~check_index) {
reg_location = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_POS);
} else {
// We're All Done Pause for a Bit, go again.llSetTimerEvent(0.);
llSleep(5.);
check_mode = 1;
check_index = llGetListLength(region_names);
reg_online = llRequestSimulatorData(llList2String(region_names, --check_index), DATA_SIM_STATUS);
llResetTime();
llSetTimerEvent(10.);
}
} else {
llInstantMessage(llGetOwner(), "Dataserver (unknown key): " + (string)queryid + " Data: " + data );
}
llResetTime();
} timer() {
// An Error, but we keep goingif (check_mode == 1) {
llInstantMessage(llGetOwner(), "Dataserver Timeout (Online check): " + llList2String(region_names, check_index));
reg_online = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_STATUS);
} elseif (check_mode == 2) {
llInstantMessage(llGetOwner(), "Dataserver Timeout (Vector check): " + llList2String(region_names, check_index));
reg_location = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_POS);
}
}
}
What were you doing when it happened?
Here's some object names and SLT timestamps for objects that detected failures on the region "The Wastelands" on March 1st:
llRequestSimulatorData() frequently and silently fails.
Type
Bug
Priority
Unset
Status
Closed
Resolution
Triaged
Reporter
NeoBokrug Elytis (neobokrug.elytis)
Created at
2022-03-02T20:35:53Z
Updated at
2022-04-21T21:43:49Z
{
'Build Id': 'unset',
'Business Unit': ['Platform'],
'ReOpened Count': 0.0,
'Severity': 'Unset',
'System': 'SL Simulator',
'Target Viewer Version': 'viewer-development',
'What just happened?': 'For an element of a scripted game that I host, I poll region status and region coordinates for over a decade. Ever since the most recent server release ( https://releasenotes.secondlife.com/simulator/2022-02-10.568388.html ), there have been intermittent failures using llRequestSimulatorData() where requests for data are silently dropped. \r\n\r\nI have made changes to my system to address the issue, in case I was running up against new undocumented throttles; and because it was a decade old. The errors still persist. Here is a much simpler sample of my script that produces the same errors.\r\n\r\n---- Sample Script ----\r\n\r\ninteger check_index;\r\ninteger check_mode = 1;\r\n\r\nkey reg_online;\r\nkey reg_location;\r\n\r\nlist region_names = [\r\n "The Rot",\r\n "Cormac",\r\n "Hambone Slough",\r\n "Fort Stygian",\r\n "The Great Fissure",\r\n "The Wastelands",\r\n "The Junkyard",\r\n "The Sand Seas",\r\n "North Yard",\r\n "Burnt Oak"\r\n];\r\n \r\nlist region_coords = [\r\n <201472., 265216., 0.>, // The Rot\r\n <201216., 265216., 0.>, // Cormac\r\n <200960., 265472., 0.>, // Hambone Slough\r\n <201472., 265472., 0.>, // Fort Stygian\r\n <201216., 265472., 0.>, // The Great Fissure\r\n <201216., 265728., 0.>, // The Wastelands\r\n <201472., 265728., 0.>, // The Junkyard\r\n <200960., 265216., 0.>, // The Sand Seas\r\n <201472., 265984., 0.>, // North Yard\r\n <201216., 265984., 0.> // Burnt Oak\r\n];\r\n\r\ndefault {\r\n state_entry() {\r\n check_mode = 1;\r\n check_index = llGetListLength(region_names);\r\n reg_online = llRequestSimulatorData(llList2String(region_names, --check_index), DATA_SIM_STATUS);\r\n llResetTime();\r\n llSetTimerEvent(10.);\r\n }\r\n\r\n dataserver(key queryid, string data) {\r\n llSleep(1. / 45.);\r\n if (queryid == reg_online) {\r\n llSetTimerEvent(10.);\r\n if (~check_index) {\r\n llSetText(llList2String(region_names, check_index) + ": " + data + "\\n" + (string)llGetTime(), <0.0, 1.0, 1.0>, 1.0);\r\n if (llToLower(data) != "up") {\r\n // I do error stuff here.\r\n }\r\n --check_index;\r\n }\r\n\r\n if (~check_index) {\r\n reg_online = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_STATUS);\r\n } else {\r\n check_mode = 2;\r\n check_index = llGetListLength(region_names);\r\n reg_location = llRequestSimulatorData(llList2String(region_names, --check_index), DATA_SIM_POS);\r\n }\r\n } else if (queryid == reg_location) {\r\n llSetTimerEvent(10.);\r\n if (~check_index) {\r\n llSetText(llList2String(region_names, check_index) + ": " + data + "\\n" + (string)llGetTime(), <0.0, 1.0, 1.0>, 1.0);\r\n if ((vector)data == ZERO_VECTOR) {\r\n llInstantMessage(llGetOwner(), llList2String(region_names, check_index) + " is reporting as ZERO_VECTOR");\r\n // I do error stuff here.\r\n } else {\r\n region_coords = llListReplaceList(region_coords, [(vector)data], check_index, check_index);\r\n } \r\n }\r\n --check_index;\r\n if (~check_index) {\r\n reg_location = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_POS);\r\n } else {\r\n // We\'re All Done Pause for a Bit, go again.\r\n llSetTimerEvent(0.);\r\n llSleep(5.);\r\n check_mode = 1;\r\n check_index = llGetListLength(region_names);\r\n reg_online = llRequestSimulatorData(llList2String(region_names, --check_index), DATA_SIM_STATUS);\r\n llResetTime();\r\n llSetTimerEvent(10.);\r\n }\r\n } else {\r\n llInstantMessage(llGetOwner(), "Dataserver (unknown key): " + (string)queryid + " Data: " + data );\r\n }\r\n llResetTime();\r\n }\r\n\r\n timer() {\r\n // An Error, but we keep going\r\n if (check_mode == 1) {\r\n llInstantMessage(llGetOwner(), "Dataserver Timeout (Online check): " + llList2String(region_names, check_index));\r\n reg_online = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_STATUS);\r\n } else if (check_mode == 2) {\r\n llInstantMessage(llGetOwner(), "Dataserver Timeout (Vector check): " + llList2String(region_names, check_index));\r\n reg_location = llRequestSimulatorData(llList2String(region_names, check_index), DATA_SIM_POS);\r\n }\r\n }\r\n}',
'What were you doing when it happened?': "Here's some object names and SLT timestamps for the region The Wastelands on March 1st:\r\n\r\nObject - Time:\r\nSpawn.Navigator.4.common - 2:58pm\r\nSpawn.Navigator.4.common - 3:10pm\r\nSpawn.Navigator.4.uncommon - 3:11pm\r\nSpawn.Navigator.4.uncommon - 3:11pm\r\nSpawn.Navigator.4.common - 3:21pm\r\nSpawn.Navigator.4.common - 3:25pm\r\n-- Region Restart at 3:32 --\r\nSpawn.Navigator.4.common - 3:32pm\r\nSpawn.Navigator.4.common - 3:41pm\r\nSpawn.Navigator.4.common - 4:11pm\r\nSpawn.Navigator.4.common - 4:16pm\r\nSpawn.Navigator.4.common - 4:17pm\r\nSpawn.Navigator.4.common - 4:28pm - Two Unresolved\r\nSpawn.Navigator.4.common - 4:28pm - Two Unresolved\r\nSpawn.Navigator.4.common - 4:28pm - Two Unresolved\r\nSpawn.Navigator.4.rare- 4:29pm - Two Unresolved\r\nSpawn.Navigator.4.common - 4:31pm\r\nSpawn.Navigator.4.common - 4:36pm\r\nSpawn.Navigator.4.common - 4:37pm\r\nSpawn.Navigator.4.rare- 4:50pm\r\nSpawn.Navigator.4.common - 4:52pm\r\nSpawn.Navigator.4.common - 5:00pm\r\nSpawn.Navigator.4.common - 5:17pm - Two Unresolved\r\nSpawn.Navigator.4.uncommon - 5:26pm\r\nSpawn.Navigator.4.uncommon - 5:28pm\r\nSpawn.Navigator.4.common - 5:30pm - Three Unresolved\r\nSpawn.Navigator.4.common - 5:33pm\r\nSpawn.Navigator.4.uncommon - 5:36pm\r\nSpawn.Navigator.4.common - 5:39pm - Three Unresolved\r\nSpawn.Navigator.4.common - 5:42pm\r\nSpawn.Navigator.4.uncommon - 5:42pm\r\nSpawn.Navigator.4.common - 5:46pm\r\nSpawn.Navigator.4.common - 5:57pm\r\nSpawn.Navigator.4.common - 5:57pm\r\nSpawn.Navigator.4.uncommon - 6:03pm ",
'What were you expecting to happen instead?': 'Things to work.',
}
The text was updated successfully, but these errors were encountered:
What just happened?
For an element of a scripted game that I host, I poll region status and region coordinates for over a decade. Ever since the most recent server release ( https://releasenotes.secondlife.com/simulator/2022-02-10.568388.html ), there have been intermittent failures using llRequestSimulatorData() where requests for data are silently dropped.
I have made changes to my system to address the issue, in case I was running up against new undocumented throttles; and because it was a decade old. The errors still persist. Here is a much simpler sample of my script that produces the same errors.
---- Sample Script ----
What were you doing when it happened?
Here's some object names and SLT timestamps for objects that detected failures on the region "The Wastelands" on March 1st:
Object - Time:
Spawn.Navigator.4.common - 2:58pm
Spawn.Navigator.4.common - 3:10pm
Spawn.Navigator.4.uncommon - 3:11pm
Spawn.Navigator.4.uncommon - 3:11pm
Spawn.Navigator.4.common - 3:21pm
Spawn.Navigator.4.common - 3:25pm
– Region Restart at 3:32 –
Spawn.Navigator.4.common - 3:32pm
Spawn.Navigator.4.common - 3:41pm
Spawn.Navigator.4.common - 4:11pm
Spawn.Navigator.4.common - 4:16pm
Spawn.Navigator.4.common - 4:17pm
Spawn.Navigator.4.common - 4:28pm - Two Unresolved
Spawn.Navigator.4.common - 4:28pm - Two Unresolved
Spawn.Navigator.4.common - 4:28pm - Two Unresolved
Spawn.Navigator.4.rare- 4:29pm - Two Unresolved
Spawn.Navigator.4.common - 4:31pm
Spawn.Navigator.4.common - 4:36pm
Spawn.Navigator.4.common - 4:37pm
Spawn.Navigator.4.rare- 4:50pm
Spawn.Navigator.4.common - 4:52pm
Spawn.Navigator.4.common - 5:00pm
Spawn.Navigator.4.common - 5:17pm - Two Unresolved
Spawn.Navigator.4.uncommon - 5:26pm
Spawn.Navigator.4.uncommon - 5:28pm
Spawn.Navigator.4.common - 5:30pm - Three Unresolved
Spawn.Navigator.4.common - 5:33pm
Spawn.Navigator.4.uncommon - 5:36pm
Spawn.Navigator.4.common - 5:39pm - Three Unresolved
Spawn.Navigator.4.common - 5:42pm
Spawn.Navigator.4.uncommon - 5:42pm
Spawn.Navigator.4.common - 5:46pm
Spawn.Navigator.4.common - 5:57pm
Spawn.Navigator.4.common - 5:57pm
Spawn.Navigator.4.uncommon - 6:03pm
What were you expecting to happen instead?
Things to work.
Other information
Links
Related
Original Jira Fields
The text was updated successfully, but these errors were encountered: