-
Couldn't load subscription status.
- Fork 5
More improvements #161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
More improvements #161
Conversation
fa55375 to
861b9ea
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements several improvements to the context chat application, focusing on enhanced queue processing prioritization, better error handling, and duplicate event cleanup. The changes prioritize new files over updates in the indexing queue and add comprehensive exception handling throughout various service layers.
- Adds prioritization logic to process new files before updates in the queue system
- Implements comprehensive exception handling across service layers with proper logging
- Introduces a migration step to remove duplicate filesystem events
Reviewed Changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/psalm-baseline.xml | Updates psalm version and adds baseline for undefined class warning |
| src/components/ViewAdmin.vue | Updates admin view text to show unseen files count alongside sent files |
| lib/Settings/AdminSettings.php | Adds queued new files count to admin statistics |
| lib/Service/QueueService.php | Implements prioritization logic and new file counting functionality |
| lib/Service/FsEventService.php | Adds exception handling for file access operations |
| lib/Service/FsEventScheduler.php | Improves error handling in owner retrieval logic |
| lib/Service/ActionScheduler.php | Adds exception documentation and imports |
| lib/Public/ContentManager.php | Wraps action service calls with exception handling |
| lib/Migration/RemoveDuplicateFsEvents.php | Adds migration step to clean up duplicate filesystem events |
| lib/Listener/FileListener.php | Improves error message clarity in filesystem event listener |
| lib/Db/QueueMapper.php | Adds new file filtering and counting capabilities |
| lib/Db/QueueContentItemMapper.php | Adds ordering to queue retrieval queries |
| lib/Db/QueueActionMapper.php | Adds ordering to queue retrieval queries |
| lib/Db/FsEventMapper.php | Implements duplicate prevention logic and adds ordering |
| lib/Command/Statistics.php | Adds new file queue statistics to command output |
| lib/BackgroundJobs/FileSystemListenerJob.php | Groups events by user and adds memory management |
5fb6f45 to
aa387da
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good code wise. I'm not deep enough in the app so I can't judge the logic.
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net> # Conflicts: # lib/Public/ContentManager.php # lib/Service/FsEventService.php
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
by working per user and tearing down FS in between Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
086bb78 to
d9e9382
Compare
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
d9e9382 to
26424a9
Compare
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
58b01b1 to
fb9cc9e
Compare
- add an index over the rows to speed up de-duplication, and uniqueness check upon insertion - delete all instances of the row when the event is processed - add more logging Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
fb9cc9e to
cee6ea6
Compare
|
Switched to progressive de-duplication as advised by Julien instead of doing it at once in a repair step since it was difficult to do come up with a query that limited the no. of entries deleted/inserted in one DB transation, which can cause issues in certain setups like Galera setups as Joas and Christoph noted. |
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
|
Thanks for improving the migration step @kyteinsky ! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for fixing the issue 🚀
|
@kyteinsky Now the backend embedder is failing |
|
This PR also has the same issue so it's not a one-off at least: nextcloud/context_chat_backend#200 |
|
Fixed the issue in context_chat_backend, see the PR linked above for details. |
No description provided.