Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[mirroring client] Catch-up handover review with missing features and…
… review comments (googleapis#3347) * chore: revert review comments * feat: add MirroringOperationException exception markers (googleapis#125) * feat: concurrent writes in MirroringBufferedMutator (googleapis#80) * refactor: implement multiple argument operations on MirroringAsyncTable with specific operations rather than batch() (googleapis#75) * feat: implement MirroringAsyncTable#getName() (googleapis#132) * feat: use Logger rather than stdout in DefaultMismatchDetector (googleapis#128) * feat: synchronous writes (googleapis#88) * fix: implement heapSize method for RowCell (googleapis#111) * feat: FlowController accounts for memory usage (googleapis#137) * refactor: remove Configuration as a base of MirroringConfiguration (googleapis#127) * feat: MirroringAsyncBufferedMutator (googleapis#81) * refactor: rename WRITE_MISMATCH to SECONDARY_WRITE_ERROR (googleapis#138) * fix: BufferedMutator close() waits for all secondary flushes to finish (googleapis#110) * feat: 2.x reads sampling (googleapis#114) * refactor: make MirroringResultScanner synchronize on itself rather than MirroringTable (googleapis#134) * ConcurrentBufferedMutator integration tests (googleapis#135) * feat: add synchronous MirroringConnection to 2.x (googleapis#109) * fix: MirroringConnection in 2.x failed to compile (googleapis#139) * fix: fix BufferedMutator ITs (googleapis#140) * feat: run 1.x integration tests on MirroringConnection etc. from 2.x (googleapis#108) * feat: 2.x - rewrite Increment and Append as Put in batch (googleapis#116) * fix: fix build (googleapis#142) * refactor: minor fixes after review (googleapis#117) * feat: MirroringAsyncTable#getScanner() (googleapis#58) * test: 2.x integration tests (googleapis#112) * feat: implement MirroringAsyncBufferedMutatorBuilder (googleapis#144) * feat: log rows and values in DefaultMismatchDetector (googleapis#129) * fix: ITs - add expected parameter to MismatchDetectors (googleapis#153) * fix: force Append and Increment to return results and discard that result before returning it to user (googleapis#136) * fix: review fixes in utils * fix: review fixes in BufferedMutator * fix: review fixes in Faillog * fix: fixed reference counting * fix: review fixes in FlowController * fix: review fixes in metrics * fix: review fixes in verification * fix: Review fixes in MirroringTable * fix: review fixes in HBase 2.x client * fix: fixes in ITs * feat: MirrorinAsyncTable: scan(), scanAll() (googleapis#131) * fix: review fixes in tests * feat: MirroringConnection: timeout in close() and abort() (googleapis#133) * feat: better mismatch detection of scan results (googleapis#130) * feat: quickstart (googleapis#105) * fix: 2.x scan ITs (googleapis#158) * fix: DefaultMismatchDetector tests (googleapis#157) * fix: ConcurrentBufferedMutator waits for both flushes to finish before closing (googleapis#161) * fix: additional minor fixes after review (googleapis#163) * fix: BufferedMutator review fixes (googleapis#164) - Simplify #flush(). - Add javadocs. - (sequential) Fix flush() exception handling. - (sequential) Move error handling to a separate inner class. * fix: PR fixes * fix: report zeroed error metrics after successful operations * fix: prepend MismatchDetectorCounter with Test to better reflect its purpose * feat: Client-side timestamping (googleapis#165) * fix: reduce timeout in TestBlocking to make the tests run faster * fix: asyncClose -> closePrimaryAndScheduleSecondaryClose * fix: remove unused Batcher#throwBatchDataExceptionIfPresent * fix: remove unused Comparators#compareRows * fix: extract failedReads from MatchingSuccessfulReadsResults to reduce confusion * feat: remove unused MirroringTracer from FailedMutationLogger * fix: MirroringAsyncBufferedMutator - test if failed mutation is passed to secondary write error consumer * fix: TestMirroringAsyncTableInputModification typo fix * fix: describe user flush() in Buffered Mutator in quickstart * fix: MirroringBufferedMutator - move flush threshold from BufferedMutations to FlushSerializer * refactor: MirroringBufferedMutator#close() - use AccumulatedExceptions insteand of List<Exception> * BufferedMutator - add close timeout * AsyncBufferedMutator - add close timeout * fix: remove stale addSecondaryMutation comment * fix: add a comment that addSecondaryMutation handles failed writes * fix: unify implementations of flushBufferedMutatorBeforeClosing * fix: BufferedMutator - throw exceptions on close * fix: BufferedMutator - add comment explaining that chain of flush operations is created * fix: BufferedMutator - clarify comments * fix: Concurrent BufferedMutator - fix throwFlushExceptionIfAvailable * fix: explain why flush is called in Sequential BufferedMutator test * fix: TestConcurrentMirroringBufferedMutator - make waiting for calls explicit * refactor: BufferedMutator rename scheduleFlushAll() to scheduleFlush() * refactor: make FlushSerializer non-static * fix: BufferedMutator - use HierarchicalReferenceCounter * feat: Add MirroringConnection constructor taking MirroringConfiguration * refactor: move releaseReservations to finally * fix: use less convoluted example in lastFlushFutures description * fix: merge small Timeestamper files into a single file * fix: add a comment explaining which exceptions are forwarded to the user and why in SequentialMirroringBufferedMutator * fix: use UnsupportedOperationException instead of RuntimeException when forbidden mutation type is encountered * fix: add comment explaining why batch is complicated * fix: add a TODO to implement point writes without batch Co-authored-by: Mateusz Walkiewicz <mwalkiewicz@unoperate.com> Co-authored-by: Adam Czajkowski <prawilny@unoperate.com> Co-authored-by: Kajetan Boroszko <kajetan@unoperate.com>
- Loading branch information