[
https://issues.apache.org/jira/browse/SOLR-10515?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16024721#comment-16024721
]
Shalin Shekhar Mangar commented on SOLR-10515:
----------------------------------------------
bq. Re. #2 - I used sorted variants to make iteration order predictable, so
that the primitive caching of byte[] data in TriggerBase works better -
otherwise, even if their content was identical their iteration order could have
been different (depending on insertion order and internal bucket collisions in
HashSet / HashMap).
I see. I'd favor keeping the lastState as a map in TriggerBase and compare
using equals() instead of an array -- it seems a bit fragile. Alternately,
please add javadocs to getState to indicate that any collections used as values
must have a fixed iteration order.
> Persist intermediate trigger state in ZK to continue tracking information
> across overseer restarts
> --------------------------------------------------------------------------------------------------
>
> Key: SOLR-10515
> URL: https://issues.apache.org/jira/browse/SOLR-10515
> Project: Solr
> Issue Type: Sub-task
> Security Level: Public(Default Security Level. Issues are Public)
> Components: SolrCloud
> Reporter: Shalin Shekhar Mangar
> Assignee: Andrzej Bialecki
> Labels: autoscaling
> Fix For: master (7.0)
>
> Attachments: SOLR-10515.patch, SOLR-10515.patch
>
>
> The current trigger design is simplistic and keeps all the intermediate state
> in memory. But this presents two problems when the overseer itself fails:
> # We lose tracking state such as which node was added before the overseer
> restarted
> # A nodeLost trigger can never really fire for the overseer node itself
> So we need a way, preferably in the trigger API itself to save intermediate
> state or checkpoints so that it can seamlessly continue on overseer restarts.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]