Commit Graph

39 Commits (master)

Author SHA1 Message Date
Ansariel 571155c561 Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llfilesystem/lldiskcache.cpp
#	indra/llfilesystem/lldiskcache.h
#	indra/llfilesystem/llfilesystem.cpp
#	indra/llui/llaccordionctrl.cpp
#	indra/llui/llaccordionctrl.h
#	indra/newview/llfloaterimnearbychathandler.cpp
#	indra/newview/llfloaterpreference.cpp
#	indra/newview/llfloatersettingsdebug.cpp
#	indra/newview/llfloatersettingsdebug.h
#	indra/newview/llfloatertools.cpp
#	indra/newview/llfloatertools.h
#	indra/newview/llpanelmaininventory.cpp
#	indra/newview/llpanelmaininventory.h
#	indra/newview/llpanelpeople.cpp
#	indra/newview/llpreviewnotecard.cpp
#	indra/newview/llpreviewnotecard.h
#	indra/newview/llpreviewscript.cpp
#	indra/newview/llpreviewtexture.cpp
#	indra/newview/llscreenchannel.cpp
#	indra/newview/llviewerwindow.cpp
#	indra/newview/pipeline.cpp
#	indra/newview/skins/default/xui/en/panel_preferences_alerts.xml
2024-08-19 18:55:52 +02:00
Ansariel Hiller d6190bbf13
Refactor LLFileSystem for and fix an old issue in LLFile (#2332) 2024-08-19 09:39:35 +03:00
Ansariel 07228d3a9e Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts:
#	autobuild.xml
#	indra/cmake/CURL.cmake
#	indra/cmake/Copy3rdPartyLibs.cmake
#	indra/cmake/FreeType.cmake
#	indra/cmake/LLPrimitive.cmake
#	indra/cmake/NGHTTP2.cmake
#	indra/cmake/Tracy.cmake
#	indra/llappearance/llavatarappearancedefines.cpp
#	indra/llcommon/llprofiler.cpp
#	indra/llcommon/llprofiler.h
#	indra/llfilesystem/lldiskcache.cpp
#	indra/llfilesystem/lldiskcache.h
#	indra/llinventory/llinventorytype.cpp
#	indra/media_plugins/example/CMakeLists.txt
#	indra/newview/CMakeLists.txt
#	indra/newview/installers/windows/installer_template.nsi
#	indra/newview/llappearancemgr.cpp
#	indra/newview/llappviewer.cpp
#	indra/newview/llgroupmgr.cpp
#	indra/newview/llimprocessing.cpp
#	indra/newview/llviewermenu.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llvoavatar.cpp
#	indra/newview/llvoavatarself.cpp
#	indra/newview/skins/default/xui/en/menu_viewer.xml
#	indra/newview/viewer_manifest.py
2024-08-15 00:12:13 +02:00
Rye Mutt 0ee528c5fd Mitigate asset fetch thread stalls from LLDiskCache mutex contention and trivial cleanup
Move LLDiskCache::updateFileAccessTime to LLFilesystem as it's the only user of that function.

Change mCacheDir and LLDiskCache::metaDataToFilepath to statics.
2024-08-14 00:31:37 -04:00
Beq de702e112a Slightly less naive cache
The simple cache ihas a number of issues
* the "max cache size" is not the max cache size
* the purge typically only purges DOWN to the max cache size
* once you reach max you are basically purging constantly.
This change addresses that a bit by adding highwater threshold at 95% leaving a bit of headroom for the incoming cache updates while we purge, and a low water threshold, that we purge down to (70%) .
This means people can now set their cache to a ramdisk of they really want and it won't (normally) overflow.
it reduces the cache thrashing, this is not a speedup on the main thread really, but just a less naive process.
This does not address the fact that every time we check the cache it has to enumerate every single file (beyond stupid) even though most have not changed. This is TBD.
2023-06-27 19:12:58 +01:00
Ansariel 25f20cfd59 const ref please! 2023-04-04 13:16:14 +02:00
Ansariel 1edfb172f5 Merge branch 'DRTVWR-544-maint' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llfilesystem/lldiskcache.h
#	indra/newview/app_settings/settings.xml
2022-01-12 16:46:56 +01:00
Mnikolenko Productengine c09155574d SL-15083 Remove old vfs files 2022-01-11 19:31:51 +02:00
Ansariel 738e5c2659 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-07-15 19:56:26 +02:00
Ansariel a4e0fde3ee Shuffle stuff around 2021-07-06 09:50:32 +02:00
Nicky e6d4f07c2f Make GCC happy. 2021-07-05 16:07:36 -04:00
Beq 98b19c8845 Additional static cache fixes to prevent purging 2021-07-05 14:46:55 +01:00
Beq 6d6c48d609 [FIRE-31003] Add back static cache (opensim) + pre-cache pose stand 2021-07-04 00:12:13 +01:00
Ansariel dde3c2c7a8 Merge branch 'DRTVWR-519' of https://bitbucket.org/lindenlab/viewer 2021-06-05 14:03:30 +02:00
Ansariel 3f31af4c1f Merge branch 'master' of https://bitbucket.org/Ansariel/phoenix-firestorm 2021-06-05 13:59:25 +02:00
Ansariel 72bd38a0ce Copy&paste error 2021-05-29 22:40:02 +02:00
Ansariel ef501d40af Merge branch 'DRTVWR-519' of https://bitbucket.org/lindenlab/viewer 2021-05-18 09:02:44 +02:00
Nat Goodspeed b3708ac238 SL-15200: Use new LLApp::sleep() in LLPurgeDiskCacheThread::run(). 2021-05-17 15:10:06 -04:00
Nat Goodspeed 87faf25891 SL-15200: Explain why purge() is called on another thread.
Also add Ansariel's explanation for why interaction through the filesystem
itself should be safe.
2021-05-17 10:24:27 -04:00
Ansariel 89cf988aaf BUG-230673: Add warning that LLDiskCache::purge() is also called from outside the main thread 2021-05-17 09:49:32 +02:00
Ansariel 78f6dec12f Fix typo 2021-05-12 22:39:42 +02:00
Ansariel 0e253cb909 BUG-230673: Trim asset disk cache regularly 2021-05-12 10:45:23 +02:00
Callum Prentice 3898609ae2 Fix for SL-15226 Simple cache viewer: Integer overflow in cache size - via FS:Ansariel 2021-05-11 12:58:05 -07:00
Ansariel c51cab60d4 Simple cache viewer: Separate texture and asset cache sizes 2021-05-06 12:02:31 +02:00
Ansariel 44081af153 Simple cache viewer: Fix integer overflow 2021-05-06 11:50:13 +02:00
Ansariel 5f90dbbc63 Simple cache viewer: Add regular cache cleanup 2021-05-06 10:05:29 +02:00
Ansariel e66659fe9d More simplified cache tweaks 2021-03-14 21:32:07 +01:00
Ansariel e6c34f01d2 Revert revert of Simplified Cache viewer release - continue with simplified cache
This reverts commit 40ad606ae0, reversing
changes made to 906cfe699d.
2021-03-10 15:13:12 +01:00
Callum Prentice 168d177197 This set of changes reverts the merge with master (git revert c83e740) and results in a version of the DRTVWR-519 that matches what was presemt before it was deployed as a release viewer *plus* 3 small fixes from Maxim (See commits). This branch can now be used for additional fixes before eventually being used to release D-519 as normal 2021-03-09 14:39:51 -08:00
Brad Payne (Vir Linden) c83e740ef9 Revert "Merge branch 'master' of https://bitbucket.org/lindenlab/viewer into DRTVWR-519"
This reverts commit e61f485a04, reversing
changes made to 00c47d079f.
2021-03-08 13:56:16 +00:00
Callum Prentice 391ada1150 Fix for meta issue: SL-14211 Determine optimum cache size for VFS replacement cache 2020-10-27 13:53:17 -07:00
Mnikolenko Productengine 3051db7b61 Purge excessive files from disc cache each startup 2020-10-08 15:26:54 +03:00
Callum Prentice 1a9942a51c Improve, rationalize and expand comments 2020-10-07 16:43:01 -07:00
Callum Prentice 5fdc4a1fb4 Add in some cache stats for the about box 2020-10-07 16:03:28 -07:00
Callum Prentice 08dfc0836f This changeset hooks up many things that have been in progress and moves things about between llfilesystem and lldiskcache - there is still some bookkeeping work left but this is the first version that appears to work and actively manage the cache 2020-10-07 15:25:12 -07:00
Callum Prentice 3092aa8aae Add in the C++ filesystem based cache and clean up some indempotent functions in llfilesystem 2020-10-06 17:16:53 -07:00
Callum Prentice 6be1f88a5e Complete the change from lldiskcache -> llfilesystem and then addition of new lldiskcache implementation 2020-09-24 14:45:39 -07:00
Callum Prentice 96e2873bfa Rename lldiskcache.* to llfilesystem.* - i think this is the right name since it's responsible for performing file system operations and (will eventually) delegrate to a separate disk cache component to save/load data and keep track of metadata etc. 2020-09-24 10:23:39 -07:00
Callum Prentice d9448c6f52 The folder where the disk cache lives was originally renamed from llvfs to llcache but @henri's suggestion that that doesn't reflect the other files in the same place and it should be llfilesystem is a good one so I changed it over 2020-09-17 09:45:06 -07:00