Commit Graph

142 Commits (0929b5db472f5db99ab2ca6e246792c674fd106e)

Author SHA1 Message Date
ansuz 6ec5171518 add support for changing a few more Env parameters at runtime
ansuz f2ec9cbe33 load premium and customLimits to avoid evicting them even if inactive
ansuz 854e4c06ff report lastEviction in an admin INSTANCE_STATUS
ansuz 471a9a33ac take note of a minor error with pin RPCs
ansuz 6d13a785c6 downgrade a non-critical XXX to a FIXME
ansuz b5d3a10dc2 guard against possible typeErrors from unvalidated config input
ansuz f4f803ccd9 reuse Keys.canonicalize to accept any pubkey format
ansuz 914139dbfa lint compliance
yflory 51e1b9b043 Fix custom limit not applied when using a raw edPublic
ansuz aa35e092f7 update an inaccurate comment
ansuz 928b7e3583 implement GET_LIMITS admin rpc
...and label stored usage limits according to their source
ansuz b62d4387a6 drop support for SET_DEFAULT_STORAGE_LIMIT
it's redundant now that we support persistent admin decrees
and it was never exposed via the UI anyway
ansuz 0c5db31fbc refactor quota logic for external usage
ansuz bd6234c5bc lint compliance and some notes
ansuz 1781ee2585 implement 'UPDATE_DEFAULT_STORAGE' as a decree
ansuz 7aa7d5978f implement persistence of config changes from admin panel
ansuz fcfcb3dca6 fix history trim for channels with access lists
ansuz 6ada5fd751 always consider premium accounts to be active
ansuz d9219f4ecc add a note for later
ansuz 5749b6fd7b add an admin RPC to archive documents
ansuz 95778cc7c9 respond with ENOENT instead of E_NO_OWNERS when archiving a file that does not exist
yflory 04af753a81 lint compliance
ansuz ebcc9a069b add server-side support for the new format of public signing keys
ansuz d35b015c3f log some info on successful file uploads
ansuz 9ed26cfeb0 lint compliance
ansuz 74567e0cf4 return process memory usage in GET CACHE STATS RPC
ansuz e527867e2e queue blob and channel deletions per-user
ansuz bd3e18d1a8 only cache a user's pinned channels if there are no errors when loading them
ansuz bef18a9320 hotfix
ansuz 3d8e78a268 fix overly broad config interpretation for daily check
ansuz e6ec891d9a improve admin rpc for diagnosing memory used by the cache
ansuz 6d0dee979a allow admins to inspect index/metadata caches
ansuz b0179eaad9 drop XXX note
ansuz 9dbd32758a improve worker logging and move blob deletion to worker processes as well
ansuz cb53bd1c15 lint compliance
ansuz 14feef1757 calculate pin list checksums in a worker
ansuz 70a0d4efb4 move more database reads into the database worker
ansuz 4ba36a9173 load user pins in the database worker
ansuz 471e374533 compute metadata in the same child process that builds indexes
ansuz 479b76f848 lint compliance
ansuz 40251948d4 check authenticated rpc signatures in separate threads
ansuz 90899aa2f4 start reviewing and removing XXX notes
ansuz 631ea54b49 lint compliance
ansuz 67dd4a608c Merge remote-tracking branch 'origin/scaling' into scaling2
ansuz b2fcde87d8 implement an admin command to update the default storage limit without a restart
yflory 0d636dabc9 Check signature for history keeper in a different process
ansuz 2a9780abcf lint compliance
ansuz 2d47e7e2cf implement an admin rpc to fetch ulimit data
ansuz 81c7416095 lint compliance
ansuz f644c24362 add an admin-rpc to count the number of open files
ansuz 1230057970 disable IS_PAD_PINNED
ansuz 6d8cdca7a3 add 'rejected' field to metadata when getMetadata requests are blocked
ansuz 9d8bb43d03 finally untangle metadata and index caches
ansuz 32d769447a begin standardizing our method of streaming lines from files
ansuz b126e4456b simplify quota logic
ansuz 170aa6d47e clean up a few tasks related to allow lists
ansuz 2f00ff3278 simplify check-in deactivation
ansuz c26560e3f9 commit stashed admin-rpc refactor
ansuz 59ad80d7f1 support larger upload sizes for users with premium accounts
ansuz f951951077 merge communities-allow-list and lint compliance
ansuz 021a6b361f remove a bogus XXX note
ansuz 7ee8778210 kick unauthorized users from restricted channels
and update dependencies
ansuz fe0e02a421 restrict access to metadata
ansuz 791aad53f2 WIP allow list changes
ansuz f579c9b059 semi-functional allow-list implementation in historyKeeper
ansuz 0edcdcb1b8 oups! fix a missing callback that's been here for a while...
ansuz 27e57e7af0 oups! fix a missing callback that's been here for a while...
ansuz f86196e40a implement shared environment between historyKeeper and RPC
ansuz 38c1700173 Respond to pinning RPCs as soon as possible
(instead of waiting until you've read an unbounded number
of pin logs while queries back up in memory)

Also replace instances of 'publicKey' with 'safeKey' or 'unsafeKey'
to clearly and correctly indicate their format.
ansuz 3dc789cbca replace pinned.js with low-profile streaming implementation
ansuz 1231cacef1 remove XXX
ansuz 7f22da0f57 fix use of incorrect key format in admin-rpc
ansuz 802034616c centralize historykeeper-rpc interaction in rpc methods
ansuz b4172676f3 lint compliance
ansuz f17d14fd99 simpler limit updates
ansuz bde17a62a1 continue refactoring rpc
ansuz fa525817ba fix broken removePins RPC
ansuz 5808c534b5 fix function signature for trimHistory RPC
ansuz 9c28941f6c lint compliance
ansuz 46dfa026f0 fix an API change that caused a typeError
ansuz 88be40ede3 standardize some function signatures and factor out a lot of boilerplate
ansuz 65ba85d97b clear historyKeeper cache when we trim a channel
ansuz 43307ffb1a define all server intervals in a map so we can easily clear them all
ansuz 6523974ca2 fix a WRITE_PRIVATE_MESSAGE rpc regression
ansuz 779e817443 stop relying on netflux-server internals
* create RPC module from inside historyKeeper
* stop passing around netflux-server context
  * update to use newer netflux-server's formal APIs
* manage your own cache of indexes instead of storing things in the netflux context
ansuz b093d3f0d2 WIP massive rpc refactor
ansuz ceb351326c split out some more rpc functionality and fix broken module paths
ansuz c1f222dd6c move metadata commands from rpc to their own module
ansuz bb7e8e4512 move login block functionality into its own rpc module
ansuz c765362744 move more rpc functionality into modules
ansuz c93b39c094 separate more rpc functionality into pinning and core submodules
ansuz ba6e3f33bd move admin commands into their own module