Commit Graph

495 Commits

Author SHA1 Message Date
yflory 8f679c141c Broadcast update 2021-03-30 17:41:12 +02:00
yflory 96892bff48 Merge branch 'staging' into broadcast 2021-03-30 13:53:49 +02:00
yflory 6f1caf3540 Fix team creation 2021-03-26 17:12:27 +01:00
ansuz 75f9459950 leave a FIXME in the server 2021-03-23 09:25:02 +05:30
ansuz 5eddb41d77 add more background info for some protocol semantics 2021-03-22 16:51:11 +05:30
yflory ed09b92592 Fix deleted pad restored corrupted from cache 2021-03-22 10:39:46 +01:00
yflory 7971a6d267 Major broadcast refactoring 2021-03-16 17:00:23 +01:00
yflory dbce0fe429 Use 33 characters admin channels 2021-03-16 15:25:28 +01:00
ansuz 5f269fbe53 Merge branch 'soon' into staging 2021-03-15 15:35:42 +05:30
yflory d15c0461cc Add /api/broadcast and improve message deletion 2021-03-12 12:46:11 +01:00
yflory a17e732473 Add XXX 2021-03-10 17:40:42 +01:00
yflory fee8a88169 Instance notification prototype 2021-03-09 18:27:12 +01:00
Dmitry Borodaenko 6cd2131f27 Pass archivePath to Store.create always 2021-03-03 11:31:08 -08:00
ansuz c9d1996e0d avoid incrementing index size twice for a single message 2021-03-01 18:23:24 +05:30
ansuz 4316264044 fix incomplete unowned file upload 2021-02-19 13:12:35 +05:30
yflory f5908e5f57 Fix history range 2021-02-18 16:28:40 +01:00
ansuz baab65fa36 Merge branch 'callback' into staging 2021-02-17 17:47:57 +05:30
ansuz 70ba468211 lint compliance 2021-02-17 17:47:23 +05:30
yflory f09ef072ac Fix XXX 2021-02-17 12:56:51 +01:00
ansuz 9e1d82f373 move archive deletion out of the main eviction script 2021-02-17 14:17:41 +05:30
ansuz 50bec7386d flag logic that is missing callbacks 2021-02-16 19:25:47 +05:30
yflory 287b80d4b8 Merge branch 'staging' into callback 2021-02-09 15:30:46 +01:00
yflory ea4c529e39 Remove offset code 2021-02-09 15:29:34 +01:00
ansuz b8a7defad9 lint compliance 2021-01-31 15:29:55 +05:30
ansuz 4a29d9df00 implement admin GET_USER_TOTAL_SIZE call 2021-01-31 15:28:45 +05:30
ansuz 8990e8def9 provide more context for EUNKNOWN logs 2021-01-26 10:31:29 +05:30
ansuz 43a5d5664f remove XXX 2021-01-21 17:42:41 +05:30
yflory 0fc8bfde4a Use new server format for history keeper time 2021-01-20 15:06:43 +01:00
yflory fc514fb61d Support a callback on channelMessage 2021-01-19 14:53:38 +01:00
yflory 6c394b37c8 Merge branch 'staging' into eunknown 2021-01-19 10:49:53 +01:00
yflory e5af30d678 more EUNKNOWN 2021-01-13 10:16:42 +01:00
ansuz d1eff71584 Merge branch 'soon' into staging 2021-01-08 21:23:18 +05:30
ansuz 929159a0f4 implement server offline mode (no ws) 2021-01-08 14:49:04 +05:30
ansuz c806b97076 resolve conflicts between rebrand and staging 2020-12-29 17:20:53 +05:30
ansuz fed04a025c display size of uploaded files upon completion 2020-12-23 17:21:06 +05:30
ansuz 646fdcc43e Merge branch 'cache-metadata' into staging 2020-12-11 20:16:18 +05:30
ansuz de90949e3e suppress ENOENT on metadata when restoring archived files 2020-12-11 20:12:36 +05:30
ansuz 4c7f7e271e remove an XXX note, log when restoring docs by admin rpc 2020-12-11 17:57:42 +05:30
ansuz d0df2f5840 log when archiving content via the admin panel 2020-12-11 17:03:48 +05:30
ansuz 66195a17a1 Merge branch 'staging' of github.com:xwiki-labs/cryptpad into cache-metadata 2020-12-08 16:57:13 +05:30
ansuz e6a4c68863 always delete the throttled cleanup functions once they have run 2020-12-08 16:50:37 +05:30
ansuz 4495d99e49 use the standard method of checking whether metadata is valid 2020-12-08 16:45:57 +05:30
ansuz 6bc103be5f delay cache eviction each time the metadata is requested 2020-12-08 16:43:50 +05:30
ansuz d4f94f3091 briefly cache server metadata in-memory to avoid repeated reads 2020-12-08 16:34:28 +05:30
yflory 34284fcc0c Fix issues with deprecated cache 2020-12-08 12:03:40 +01:00
ansuz 820f2a0054 Merge branch 'soon' into staging 2020-12-08 11:14:53 +05:30
ansuz 93d56e5e3d profile worker commands by total running time in seconds 2020-12-08 10:44:46 +05:30
ansuz 93c807524f update offset debugging info 2020-12-08 10:24:09 +05:30
yflory 5bbde5fec5 Merge branch 'soon' into cacheRT 2020-12-01 16:40:18 +01:00
ansuz d4e6d86961 enforce asynchrony in new database offset methods 2020-11-27 08:21:51 +05:30
ansuz 466072d03b read files starting from the oldest known point of relevance when computing indices 2020-11-26 12:15:02 +05:30
yflory 93ddf51564 Merge branch 'download' into cacheRT 2020-11-24 16:46:22 +01:00
ansuz cd77b5ffc8 Merge branch 'soon' into staging 2020-11-19 13:18:08 +05:30
ansuz faa84bcbd7 describe arguments for 'completeUpload' RPC 2020-11-19 12:16:02 +05:30
yflory bd4b44476d Archive and restore UI in the admin panel 2020-11-18 16:49:40 +01:00
ansuz e185008846 complete uploads in child processes
also fix a nasty race condition for unowned file uploads
2020-11-18 18:26:21 +05:30
ansuz b155f7b291 increase child-process timeout and improve error handling 2020-11-17 16:09:47 +05:30
David Benqué ead97d8f41 Remove FAQ and references to it 2020-11-16 11:06:48 +00:00
yflory 5946b10d0b No page reload when the cache is corrupted onReady 2020-11-06 15:00:58 +01:00
ansuz 1f1b40b83d move some implictly global state to env.js 2020-11-03 16:48:31 +05:30
ansuz aa547a7b76 align nodejs http headers with example nginx 2020-11-03 16:48:31 +05:30
ansuz 5cf8ca70e6 don't pin falsey document ids 2020-11-03 16:48:31 +05:30
yflory c9a3cad78b Fix various issues with restricted pads 2020-11-03 16:48:31 +05:30
yflory d16cc2472d First prototype of an offline cache 2020-11-03 10:49:13 +01:00
David Benqué 66d434b583 Remove about page from defaults and add XXX for future pages 2020-10-30 14:29:15 +00:00
ansuz 034472d3dd move some implictly global state to env.js 2020-10-27 12:47:15 +05:30
ansuz 0bc2433e02 Merge branch 'accessBug' into staging 2020-10-27 09:09:09 +05:30
ansuz d95b0954f9 Merge branch 'fix-printing' into staging 2020-10-27 08:13:58 +05:30
ansuz a2b79d84b8 align nodejs http headers with example nginx 2020-10-27 08:12:23 +05:30
ansuz f7bd3bdc23 don't pin falsey document ids 2020-10-26 17:34:41 +05:30
yflory 69c26fe8c7 Fix various issues with restricted pads 2020-10-23 15:44:47 +02:00
ansuz d72e053560 make a note to improve stream timeout error handling 2020-10-22 11:24:58 +05:30
ansuz 67430de7ff Make efforts to avoid closing streams mid-read
1. Close streams when you're done with them
2. Close streams if they seem to have been abandoned
2020-10-22 11:17:03 +05:30
ansuz fbfb25bf29 lint compliance 2020-10-21 21:29:52 +05:30
ansuz 100b417646 guard against several serverside typeErrors
and warn in cases where they would have occurred
2020-10-21 18:24:54 +05:30
ansuz e8428a2a73 prevent a case of multiple callbacks 2020-10-21 18:13:10 +05:30
ansuz fbc9edd795 rename latest admin commands and implement metadata getter/remover 2020-10-20 17:12:26 +05:30
ansuz 488ec93ece allow expert admins to get and clear cached channel indices 2020-10-20 17:07:55 +05:30
ansuz faa7ebf399 Fix some bugs with integrated eviction
1. implement SET_LAST_EVICTION as an admin command, not a decree
2. expect a return value from Env.evictInactive and expose it via Env.evictionReport
2020-10-15 13:15:39 +05:30
ansuz ac322c8e82 make the eviction script call back with accumulated statistics 2020-10-14 17:23:53 +05:30
ansuz a29c5641b8 introduce some artificial delays in the eviction script
...and reduce the margin of error in its bloom filters
2020-10-14 17:22:31 +05:30
ansuz 90f046f896 prevent long-running worker tasks from timing out 2020-10-14 17:18:57 +05:30
ansuz 6e57366b7f address a file descriptor leak 2020-10-13 13:14:39 +05:30
ansuz a2c0d2165b implement a few more admin decrees 2020-10-13 11:36:30 +05:30
ansuz abd84665ae lint compliance 2020-10-13 11:00:45 +05:30
ansuz 6ec5171518 add support for changing a few more Env parameters at runtime 2020-10-13 10:56:40 +05:30
ansuz adb988058d stop logging dev/fresh mode 2020-10-12 19:19:57 +05:30
ansuz f2ec9cbe33 load premium and customLimits to avoid evicting them even if inactive 2020-10-12 19:18:12 +05:30
ansuz 45b063e378 suppress irrelevant errors from Decrees.load 2020-10-12 19:15:48 +05:30
ansuz 854e4c06ff report lastEviction in an admin INSTANCE_STATUS 2020-10-12 17:52:15 +05:30
ansuz 471a9a33ac take note of a minor error with pin RPCs 2020-10-12 17:51:38 +05:30
ansuz f86409e1ba take note of which Environment variables should be made mutable via decree 2020-10-12 17:50:40 +05:30
ansuz 6d13a785c6 downgrade a non-critical XXX to a FIXME 2020-10-12 17:42:41 +05:30
ansuz 46ebd7b40b remove unsupported storage configuration parameters 2020-10-12 17:40:21 +05:30
ansuz 369c92c01d initialize Env from server and deduplicate several attributes 2020-10-12 17:39:53 +05:30
ansuz b5d3a10dc2 guard against possible typeErrors from unvalidated config input 2020-10-09 13:28:13 +05:30
ansuz 964aa2bb79 validate custom limits provided via config at launch 2020-10-08 19:07:00 +05:30
ansuz f4f803ccd9 reuse Keys.canonicalize to accept any pubkey format 2020-10-08 19:07:00 +05:30
ansuz 914139dbfa lint compliance 2020-10-08 19:07:00 +05:30
yflory 51e1b9b043 Fix custom limit not applied when using a raw edPublic 2020-10-08 19:07:00 +05:30
ansuz 145386e944 suppress an inconsequential error 2020-10-08 19:07:00 +05:30
ansuz aa35e092f7 update an inaccurate comment 2020-10-08 19:07:00 +05:30
ansuz 928b7e3583 implement GET_LIMITS admin rpc
...and label stored usage limits according to their source
2020-10-08 19:07:00 +05:30
ansuz 5029281a53 implement RM_QUOTA decree 2020-10-08 19:07:00 +05:30
ansuz af47b2cab1 implement ADD_QUOTA admin decree 2020-10-08 19:07:00 +05:30
ansuz 998f2267c4 ensure the path to the decree file exists before attempting to write to it 2020-10-08 19:07:00 +05:30
ansuz c2918ac888 fix inverted conditional 2020-10-08 19:07:00 +05:30
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
2020-10-08 19:07:00 +05:30
ansuz 0c5db31fbc refactor quota logic for external usage 2020-10-08 19:07:00 +05:30
ansuz bd6234c5bc lint compliance and some notes 2020-10-08 19:07:00 +05:30
ansuz 1781ee2585 implement 'UPDATE_DEFAULT_STORAGE' as a decree 2020-10-08 19:07:00 +05:30
ansuz 7aa7d5978f implement persistence of config changes from admin panel 2020-10-08 19:07:00 +05:30
ansuz fcfcb3dca6 fix history trim for channels with access lists 2020-10-07 18:44:24 +05:30
ansuz d509fd8b8f downgrade severity of several XXX notes 2020-10-07 17:09:46 +05:30
ansuz 1ba080739b Merge branch 'X' into staging 2020-10-07 16:28:08 +05:30
ansuz cfcfe2f65f enable APIs for XLSX export in firefox 2020-10-07 14:47:43 +05:30
yflory e698241ee9 Merge branch 'historyOO' into staging 2020-10-05 16:41:23 +02:00
ansuz 04d1bc9cd7 archive inactive data in one of the server's workers 2020-09-30 14:45:52 +05:30
ansuz 6ada5fd751 always consider premium accounts to be active 2020-09-29 18:48:23 +05:30
ansuz 5358fab615 more WIP inactive account eviction 2020-09-29 18:04:51 +05:30
ansuz a9b95865ba Merge branch 'staging' into inactive-accounts 2020-09-28 17:56:30 +05:30
ansuz d9219f4ecc add a note for later 2020-09-25 14:27:22 +05:30
ansuz 5749b6fd7b add an admin RPC to archive documents 2020-09-25 14:24:26 +05:30
ansuz d794e0b48f include inactive accounts in the archival script 2020-09-24 19:02:22 +05:30
yflory 25606b92bf lint compliance 2020-09-22 15:27:16 +02:00
yflory 4f147d4fd2 Add support for onlyoffice history 2020-09-18 17:54:57 +02:00
yflory b31707098a Improve getHistoryRange to support 'toHash' 2020-09-18 12:42:09 +02:00
ansuz 95778cc7c9 respond with ENOENT instead of E_NO_OWNERS when archiving a file that does not exist 2020-07-23 09:30:04 -04:00
ansuz b04133e6c3 remove some dead code 2020-07-23 09:28:00 -04:00
ansuz a21c3372c0 avoid a potential type error 2020-07-23 09:27:29 -04:00
yflory 04af753a81 lint compliance 2020-07-01 12:10:12 +02:00
ansuz 03be102ce4 deduplicate some code by reusing the client definition on the server 2020-06-30 14:33:00 -04:00
ansuz ebcc9a069b add server-side support for the new format of public signing keys 2020-06-25 13:14:26 -04:00
ansuz 48deced859 fix serverside index corruption 2020-06-16 04:08:03 -04:00
ansuz 5b2929a6fc suppress some useless info from some commonly logged errors 2020-05-06 13:50:48 -04:00
ansuz 9f1f01f3b4 disable worker task queueing and address a probable memory leak 2020-05-05 18:06:28 -04:00
ansuz b0af6b5488 fix an incorrect condition when checking for available server workers
Also, log when the RPC queue has a backlog and when it is drained
2020-05-05 10:53:42 -04:00
ansuz 4037270a23 add a FIXME note for a sketchy implementation in history keeper 2020-05-04 15:46:08 -04:00
ansuz 02347d134a queue signature validation per-channel to ensure correct ordering 2020-04-30 18:18:05 -04:00
ansuz 9975c27e84 increase timeout from one minute to three and decrease the number of parallel jobs per worker 2020-04-29 17:24:38 -04:00
ansuz 488f876ad6 lint compliance 2020-04-29 17:23:29 -04:00
ansuz d35b015c3f log some info on successful file uploads 2020-04-28 17:12:03 -04:00
ansuz 37d3995ac1 unify format of console output with stored logs 2020-04-28 17:05:15 -04:00
ansuz 8a5d012edf add special error handling for a few special serverside errors 2020-04-28 16:57:52 -04:00
ansuz 8bee95d13d improve error reporting in GET_HISTORY 2020-04-28 16:56:11 -04:00
ansuz e05891184e fix regression in maxWorkers 2020-04-21 12:23:48 -04:00
ansuz b56c73be6e delegate more work from getOlderHistory to the worker 2020-04-17 17:01:47 -04:00
ansuz fd169ff39c close streams after 2 minutes instead of 5
Hopefully this helps to even out our memory and CPU usage.
There's also some improved labels so that IF streams time out
we will know the exact origin of the offending call.
2020-04-17 15:05:48 -04:00
ansuz bac8ef3c6e lint compliance 2020-04-17 11:43:54 -04:00
ansuz 4e57e390da write tasks inside of workers 2020-04-16 16:37:24 -04:00