-
Notifications
You must be signed in to change notification settings - Fork 8.2k
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
Index settings and scripted fields lost or clobbered by multiple concurrent users #7191
Comments
Thanks for the in depth report, and sorry for the really long delay in getting a response to this. This is definitely a big problem throughout Kibana, and I suspect it's not entirely limited to scripted fields and index settings. I think the overall best approach is to widely adopt the Optimistic Concurrency Control approach in ES whenever we're updating documents, and then on a case by case basis for specific features in Kibana, we can come up with other options that may help ensure that people experience version conflicts as infrequently as possible. Your suggestion of storing scripted fields as separate docs might be a viable example of the latter. |
I discussed this issue with the management team and the general feeling is that this concurrency control should be across all Kibana objects and not just scripted fields. I've added a platform label to this issue. @epixa would you prefer I open a separate issue to track concurrency control across all saved objects? Linking to #9675 as well. |
Is this still considered a platform issue, or should we be trying to solve this for scripted fields specifically? @epixa @alexfrancoeur |
FYI there was another, more specific issue filed which is really just a symptom of this root problem. Didn't know this issue existed at the time. |
@bmcconaghy Don't let the area label block you. If you can think of a reasonable way to handle this for some specific use case, then don't hesitate to give it a go. |
@Bargs this is the same user I believe. @bmcconaghy I think this issue and the one Matt had mentioned are fairly self explanatory, but I can provide some additional background if needed. When speaking with @epixa last year, we decided not to pursue concurrency control for just index patterns and instead address this issue globally throughout Kibana. This is obviously a much larger effort and likely the reason behind the |
I should clarify, the reason why we considered this a broader change rather than something we could apply to a specific circumstance is that all of this stuff is powered by our generic saved object API, which doesn't have specific logic for individual types of object. I'm still not clear how someone could solve this problem for only one specific use case, but if anyone does have a good idea around this, I don't want our decision from back in the day to stop progress there. |
I really don't have a good idea for this. My question was more asking "should I be pursuing this or wait for a more global platform solution?" |
@bmcconaghy Ah, I think only you can answer that one. As far as I know, this is not on the short term roadmap for platform. |
Should be fixed by #18937 |
Kibana
Version 4.5.0
Build 9889
Commit SHA ff5cfc5
Elasticsearch
Summary:
When multiple users in an organization attempt to define scripted fields on the same index pattern at the same time, the last writer overwrites any changes made by the other users with no warning.
Steps to reproduce:
Expected behavior:
Ideally, step 8 above should result in Field B being added below Field A in Tab 2. Step 9 should result in Field B appearing after Field A in Tab 1.
Less ideally, step 8 above should fail with an error message along the lines of a concurrent modification exception. Step 9 should result in Field A remaining.
Ideas:
version_conflict_engine_exception
whenever concurrent modifications to an index pattern occur.Any of these would be better than the currently observed behavior of silent data loss. It causes random, unpredictable disappearances and rollbacks of scripted fields. Dashboards and visualizations relying on scripted fields may work for a period of time and then randomly error out when scripted fields disappear.
The text was updated successfully, but these errors were encountered: