accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthew Dinep (JIRA)" <>
Subject [jira] [Updated] (ACCUMULO-1972) Range constructors call overridable method
Date Mon, 06 Nov 2017 22:35:00 GMT


Matthew Dinep updated ACCUMULO-1972:
    Attachment: accumulo-1972.patch

Fix added. beforeStartKey and afterEndKey methods both made final and tested locally as working.

> Range constructors call overridable method
> ------------------------------------------
>                 Key: ACCUMULO-1972
>                 URL:
>             Project: Accumulo
>          Issue Type: Bug
>    Affects Versions: 1.4.4, 1.5.0
>            Reporter: Bill Havanki
>            Priority: Minor
>              Labels: newbie
>         Attachments: accumulo-1972.patch
> Several {{Range}} constructors call {{Range.beforeStartKey()}}, which is not final. This
is dangerous:
> bq. The superclass constructor runs before the subclass constructor, so the overriding
method in the subclass will get invoked before the subclass constructor has run. If the overriding
method depends on any initialization performed by the subclass constructor, the method will
not behave as expected.  ??Item 17, Effective Java Vol. 2, Bloch??
> If {{beforeStartKey()}} cannot be made final, the code should be refactored to make the
constructors safe.

This message was sent by Atlassian JIRA

View raw message