Skip to content
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

Fix three bugs with segment publishing. #6155

Merged
merged 6 commits into from
Aug 15, 2018

Commits on Aug 11, 2018

  1. Fix three bugs with segment publishing.

    1. In AppenderatorImpl: always use a unique path if requested, even if the segment
       was already pushed. This is important because if we don't do this, it causes
       the issue mentioned in apache#6124.
    2. In IndexerSQLMetadataStorageCoordinator: Fix a bug that could cause it to return
       a "not published" result instead of throwing an exception, when there was one
       metadata update failure, followed by some random exception. This is done by
       resetting the AtomicBoolean that tracks what case we're in, each time the
       callback runs.
    3. In BaseAppenderatorDriver: Only kill segments if we get an affirmative false
       publish result. Skip killing if we just got some exception. The reason for this
       is that we want to avoid killing segments if they are in an unknown state.
    
    Two other changes to clarify the contracts a bit and hopefully prevent future bugs:
    
    1. Return SegmentPublishResult from TransactionalSegmentPublisher, to make it
    more similar to announceHistoricalSegments.
    2. Make it explicit, at multiple levels of javadocs, that a "false" publish result
    must indicate that the publish _definitely_ did not happen. Unknown states must be
    exceptions. This helps BaseAppenderatorDriver do the right thing.
    gianm committed Aug 11, 2018
    Configuration menu
    Copy the full SHA
    475ee7b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a181c68 View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2018

  1. Remove javadoc-only import.

    gianm committed Aug 13, 2018
    Configuration menu
    Copy the full SHA
    64c4da9 View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2018

  1. Updates.

    gianm committed Aug 14, 2018
    Configuration menu
    Copy the full SHA
    0e09228 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2018

  1. Fix test.

    gianm committed Aug 15, 2018
    Configuration menu
    Copy the full SHA
    77bd38f View commit details
    Browse the repository at this point in the history
  2. Fix tests.

    gianm committed Aug 15, 2018
    Configuration menu
    Copy the full SHA
    a6a9392 View commit details
    Browse the repository at this point in the history