Jump to content
C0C41N

uploaded sounds' lifetime

Recommended Posts

If we upload a sound clip, use its uuid in a script and delete the sound from inventory. It will still work in script, right ?

Share this post


Link to post
Share on other sites

Really? I was under the impression that there was a garbage collector that eventually reclaimed UUIDs that had no references from inventory pointers. Can a script referencing only by UUID keep the asset alive?

Edited by Fenix Eldritch

Share this post


Link to post
Share on other sites
2 minutes ago, Fenix Eldritch said:

Really? I was under the impression that there was a garbage collector that eventually reclaimed UUIDs that had no references from inventory pointers. Can a script referencing only by UUID keep the asset alive?

The collector is not the assest server, it is the sim server. A sound is not an object.

Edited by steph Arnott

Share this post


Link to post
Share on other sites

That's not what I meant - I'm aware of the difference between instance UUIDs and asset UUIDs. I was curious if deleting all inventory wrappers of something (like a sound file) would eventually mean the UUID it once had got garbage collected on the actual asset server.

I did a deep dive into the wiki and found a really interesting bit of information from an old user group meeting with the lindens in which James Linden said the following:

Quote

There is garbage collection, but as you noted it is very slow.
Basically we scan the entire world dataset, including inventory items,
region state files (textures on objects, textures as inventory items
inside objects) and assets (notecards and script text).  Anything that
looks like a texture UUID is added to a list, then textures (well, all
assets really) that aren't on the list are deleted.
 
So if you have a raw key reference to a texture inside a script the
texture will not be garbage collected.  If it is, then our garbage
collector is broken.  (It has broken in the past.  We don't immediately
delete the garbage -- we keep it around for a few days just in case we
screwed something up so we can put it back.)

The second paragraph is particularly relevant here as it backs up what Rolig stated. Textures, and in fact all assets, as noted above. Pretty neat!

Edited by Fenix Eldritch
  • Like 1

Share this post


Link to post
Share on other sites

What is also fascinating is that statement "a texture UUID that is a raw key reference inside a script", implying that they have to search every script inside object or user inventories and look for UUIDs in the relevant functions that would be playing around with textures. No wonder garbage collection is slow.

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, Fenix Eldritch said:

Really? I was under the impression that there was a garbage collector that eventually reclaimed UUIDs that had no references from inventory pointers. Can a script referencing only by UUID keep the asset alive?

The simple, logical answer is that it has to remain alive.  Do a thought experiment to see what would happen if Linden Lab hadn't designed assets to be permanent.  Designer A creates a sound and uploads it to the asset servers.  He gives its UUID to Designer B, who adds it to a creation thjat he distributes widely in world (or places in MP).  Thousands of residents add Designer B's creation to their own inventories.  Designer A leaves SL.   So .... if the sound that Designer A uploaded were deleted from the asset servers, there would be pandemonium or at least restrained outrage from those thousands of residents.  The fact that many,  many creators have left SL and we haven't seen that pandemonium confirms that assets are permanent. 

  • Thanks 1

Share this post


Link to post
Share on other sites

Bar the few exceptions where some assets end up lost or removed due to copyright violations, the asset server is "Add Only".

Everything you upload, everytime you save a notecard, a skin, or a script, a new asset is created.

 

For fun i've been running a little project that tries to randomly access hypothetical notecards, but the UUID address space is so large that it's unlikely that my script will ever land on a valid notecard for as long as I will live.

Share this post


Link to post
Share on other sites
7 hours ago, Kyrah Abattoir said:

 removed due to copyright violations, the asset server is "Add Only".

No asset in the main asset store can be removed. An asset in the main can only be set to admin access only. It is deliberately made 'Add Only' for security reasons. All assets inworld are copies.

  • Haha 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...