JanusGraph/janusgraph
Auf GitHub ansehenupdateIndex() should make error cases easier to understand
Open
#1.378 geöffnet am 14. Jan. 2019
help wantedkind/enhancement
Repository-Metriken
- Stars
- (4.985 Stars)
- PR-Merge-Metriken
- (Durchschn. Merge 3T 18h) (12 gemergte PRs in 30 T)
Beschreibung
ManagementSystem.updateIndex() returns null if the provided SchemaAction is not applicable for the current status of the index:
if (!updateAction.isApplicableStatus(schemaVertex.getStatus()))
return null;
This is confusing and the API docs also don't mention this behaviour:
/**
* Updates the provided index according to the given {@link SchemaAction}
*
* @param index
* @param updateAction
* @return a future that completes when the index action is done
*/
IndexJobFuture updateIndex(Index index, SchemaAction updateAction);
The method should either throw an exception in this case or at least document this behaviour in the API docs.
When a user doesn't know about this behaviour, then all they're getting is a NullPointerException by calling get() on the returned IndexJobFuture (see #1359).