OctoBase icon indicating copy to clipboard operation
OctoBase copied to clipboard

non-blocking near-realtime indexing

Open darkskygit opened this issue 2 years ago • 2 comments

At present, the index behavior is designed to be executed when the search interface is called, which will block the search interface in a large workspace.

We should trigger the index or add the content to the index queue when the doc is modified. When the search interface is called, we should always search for the indexed data.

Previously, the internal data of yrs could not be accessed safely across threads, which was improved in new version. We should adjust the design of the search function to optimize performance.

darkskygit avatar Feb 25 '23 10:02 darkskygit

Does the issue persist as a bug? Furthermore, I aspire to contribute code to the development of OctoBase.

water-in-stone avatar Aug 21 '23 03:08 water-in-stone

Does the issue persist as a bug? Furthermore, I aspire to contribute code to the development of OctoBase.

Yes, the problem still exists! However we have recently rewritten the implementation to be compatible with yjs, it can be safely called by multiple threads, so we can transform the full-text index into a non-blocking implementation.

In addition, this issue is also related to another issue: https://github.com/toeverything/OctoBase/issues/508

darkskygit avatar Aug 21 '23 04:08 darkskygit