-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
Revert "Revert "Search suffix tree implementation"" #51332
Conversation
This reverts commit a16871f.
@mkhutornyi Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
@mkhutornyi can you please ignore this issue as it related to #48652 regression. |
Reviewer Checklist
Screenshots/VideosAndroid: NativeAndroid: mWeb ChromeiOS: NativeiOS: mWeb SafariMacOS: Chrome / SafariMacOS: Desktop |
The regression root cause is not related to "search chats by their participants" feature, but it related to search by report displayName. When we create a group, the report name will be if we search by text
I will complete the reviewer checklist and let the decision for you if we need to implement split search text by space (we can handle it in a follow-up) @hannojg @marcaaron |
Hmm, personally, I think it's fine to handle that in a follow up as an improvement - but there might be some people who are expecting it to work that way. |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
Hey @ahmedGaber93 thanks for explaining the problem to me more detailed. I created a follow UP PR here which fixes the specific use case where searching with white spaces doesn't bring up the groups name as search result: Note however, that there is still a slight difference in how search results are returned due to this change: The group name could be found, but its not returning any of the other results as seen on staging. I can't find any details to why this has been added. Personally, I'd like to avoid adding this, as it creates more overhead where we have to de-duplicate search results later on. Wdyt @marcaaron? (It can be added to these new changes as well, I just feel that it was functionality that hasn't been added on a clear feature request in the first place) |
tbh I'm not entirely sure how it should perform in this particular case. maybe bring it up in Slack? |
🚀 Deployed to staging by https://github.com/marcaaron in version: 9.0.54-0 🚀
|
@hannojg @marcaaron I think this PR might be related to this blocker. I'm seeing very different results when making the same report search on staging vs production (and it seems like the prod results are more "correct") |
I also think this may be related to the blocker here: #51482 |
@yuwenmemon this PR has only changes internals of how search results are filtered. It has touched no UI related code. I don't think its related. |
Might be related to a crash we're seeing on Android, gonna build and test a revert |
🚀 Deployed to production by https://github.com/Beamanator in version: 9.0.54-11 🚀
|
🚀 Deployed to production by https://github.com/Beamanator in version: 9.0.54-11 🚀
|
Details
Note: This is the second attempt to merge this after the original PR here:
has been reverted for this issue:
I believe the revert to be a mistake, as the functionality to search chats by their participants had earlier been removed here (please correct me if i am wrong):
This PR aims at improving the local search speed.
On a lower end android phone with a hightraffic account searching is currently taking around 344ms in the release build.
Our proposed suffix tree search implementation takes 0.14ms for searching on that same device.
That is a 2456x improvement.
Fixed Issues
$ #46591
PROPOSAL:
Tests
[email protected]
), make sure it's found. Then search forhannomargeloio
(removing all special chars), and make sure its still foundOffline tests
Same as testing steps
QA Steps
Same as testing steps
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Screen_Recording_20240927_212736_New.Expensify.Dev.mp4
Android: mWeb Chrome
Screen_Recording_20240927_211510_Chrome.mp4
iOS: Native
Screen.Recording.2024-09-27.at.21.28.56.mov
iOS: mWeb Safari
ScreenRecording_09-27-2024.21-34-17_1.MP4
MacOS: Chrome / Safari
Screen.Recording.2024-09-27.at.21.08.10.mov
MacOS: Desktop
Screen.Recording.2024-09-27.at.21.28.10.mov