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

Code dedupe part 1 (api module) #149

Conversation

jcwuzoegiver
Copy link
Contributor

Refactored ApiModule so common module installation will not be repeated in child class and some modules installation can be overridden.
@mans4singh @felixgao

in child class and some modules installation can be overridden.
@coveralls
Copy link

Coverage Status

Coverage decreased (-0.06%) to 73.559% when pulling 6aef993 on feature/repository-datastax-migration-dedupe-part1 into 5d848a6 on feature/repository-datastax-migration.

@felixgao
Copy link
Contributor

:shipit:

1 similar comment
@mans4singh
Copy link
Contributor

:shipit:

@jcwuzoegiver jcwuzoegiver merged commit fa66152 into feature/repository-datastax-migration Jan 10, 2017
bargenilesh added a commit that referenced this pull request Jan 11, 2017
* Added initial impl of user feedback repo

* updated comments

* Added unit test for accessor

* Impl + tests for user feedback repo

* Updated test cases

* pojo changes to use lombok

* Audit log repository initial commit

* Corrected bug and skip time since is checked during insert time

* Updated test to create valid app name

* Code cleanup and minor refactoring

* Updated comments

* Added integration tests

* Set parsing log error to warn while retrieving data

* Unit test for audit log repo

* documentation + minor code correction

* Documented issues

* Updated logging

* Initial impl for priorities repo

* initial checkin for CassandraAuthorizationRepository and test

* removed unused imports

* add application list accessor and refactor cassandra authorization repsitory to use ApplicaitonList instead of plain String object

* remove todo

* refactor name app_name to appName

* add binding to cassandra repository from interface

* fix the badly refactored appName and add the missing UserDirectory module

* fix the appName one more time

* Added repo and unit/integration tests

* add logging to log the keyspace it is using

* Corrected column name

* fix app_name refactor

* Corrected comments

* Added feedback repository intergration test

* Updated comment

* Updated comments

* fix the application name cannot be * problem

* First cut of mutex repo/accessor + integration tests

* Added integration tests

* Corrected test cases to take cassandra as argument

* fix unit test fail

* add integration test and more accessors. also fixed the local maven causes problem

* refactor the naming and location of the sources

* add more method to accessor

* added page experiment index accessor

* Added default and missing label

* Corrected query and added simple integration test

* Changed UserBucketIndexAccessor interface insert/delete to return void

* add cassandra page repository using datastax.  modified the original PageExperiment.java to include additional method in the builder

* added additional accessor providers and fix cross import error and added page repository data provider for integration test

* fix bad query in accessor and add additional test cases in repository module test

* ExperimentAccessor + integration test for insert/get only

* changed parameters to use proper java camel casing

* add page respository integration test

* Added methods and test cases for experiment and bucket accessors

* Added method to get experiments

* import list

* Mutex repo updates + integration + unit tests

* Updated comments and added tests

* rename mutexaccssor to exclusionaccessor and add the mapping to guice module

* add provider for all the accessors and remove some of the cross module dependencies mapping

* Added integration tests for priorities repository

* package base reordering

* fix compile problem

* Updated pom for objects dependency

* fix bad import and missing interfaces

* Application list accessor + integration tests

* Integration tests for audit accessor + updates to experiment utils

* Commented out astynax dependency from interface and database impl

* refactor assignmnet builder to be proper builder and remove setters in original object. Also added AssignmentCountEnvelope.java that is missing from original repository

* Added acessor + integration and unit test

* Update notice and added comments

* Updated guice module

* fix bad table name

* add some comment on existing code base and fixed accessor parameter type mismatch

* fix type mismatch

* Experiment repo + few integration tests

* Added integration tests

* added updateStateIndex back and minor documentation updates

* updated get experiment list method

* More integration tests

* add missing methods for insert

* Updated test case

* Added more tests

* removing testng integration test to a different directory

* add missing deleteBy method

* Added integration tests for experiment repo

* initial repo migration for cassandra assignment repo, with incomplete code and unit test

* Added ExperimentRuleCacheUpdateEnvelope

* removed original repository/cassandra module and replaced with the new datastax module. the code compiles fine but have not tested for functional test

* Updated module

* added more unit test and fix some code issue with assignment repository

* rearrange some accessors binding

* fix accessor errors

* Refactored tests

* Corrected assignment-object test

* fix guice error and depdency graph too complicated

* Fixed tests cases

* Corrected some comparisons to exclude description and rule for null vs empty string issue

* Corrected issue with Optional.get() when the Optional is empty

* fix optional get does not consider possible null error

* Add exception handling for create exception - TODO - Validate experiment befor creation

* fix assignment date is null bug

* fix null assignment problem and left some todos for us to revisit soon

* Updated validator and object setters for validation

* Experiment validator test

* Updated mock test cases

* Updated integration and unit tests

* Added unit tests

* Updated test cases

* Http status code cleanup in test

* fix merge conflict issue

* Removed redundant null check

* Removed unused class

* Commented out testng dependencies so that unit test execute

* remove TODO

* fix test case errors

* fix the repository module dependency graph problem

* Corrected mock tests

* Updated test cases

* fix the unit test

* Added more tests cases

* fix merge conflict and new features that are added to develop branch that is not in our feature branch

* add missing mutation script

* fix missing attributes from experiments and rename attribute to sneak case

* Separated unit tests from integration tests

* remove directly dependency of UserToolsModule from Repository module

* add the migration script and reduce the file name for mutation script

* Updated script

* Created integration profile

* Updated build script

* mod: sync [ws]/bin with f/leroy-jenkins for jenkins/wasabi-internal parity

* mod: rm bin stubs

* add shell script and made migration part of the container.sh

* add replication factor to migration script

* added test case for adding to GET all assignments of an Invalid Experiment

* update the migration to be using docker

* set the client's remote host to zero to prefer localdc instead of remote

* fix the local dc token aware policy to be able to connect to direct local dc

* Commented out failing test

* t_AuditLogPaginationSmoke should not use hardcoded username "admin.

* added option to support feature.

* Retrieve individual experiments to maintain priority order

* added the ability to use the migration.sh without docker

* Corrected check for response in case of experiment not found

* Added override properties for database url, username and password

* mod: add [ws]/bin/jenkins.sh

* mod: u/d fpm.sh

* mod: u/d

* mod: u/d repo

* mod: dbug fpm

* mod: dbug fpm

* mod: ui fpm

* mod: rm fpm dbug

* mod: bump release

* Updated autumn version to 1.0.20160714060618.

* refactor cassandra_client_config.properties to remove useless attributes and added more comment on what the new properties should be. Also added the default to pom.xml.

* Feature/datastax-missingcases(getExpByApp,getExpByPage) (#128)

* added test case for invalidapplication added util method in testbase

* added test case for invalidapp and invalidpage

* added test case for invalidapp pages

* corrected the expectedstatus

* Added database system properties to test base

* Feature/table user_assignment_look_up rename and remove user_experiment_index references (#139)

Renaming user assignment lookup and remove references for user experiment index.

* Cleaned up changes for table name change (user assignment look up)

* Updated table name

* Removed commented code

* Added attributions for utils

* Renamed pojo and corrected clustering key

* add the more debugging info for bad rule cache calls

* fix a possible EOF error with keystore

* add more logging info

* fix datastax treat null values as empty string from db causes hyrule to throw exceptions

* make PoolingOptions fully adjustable via configuration file

* Removed lz4 1.1.0 dependency and commented astynax import from bucket class

* add slow query logging and monitoring connection pooling and change logback to use async logger

* Feature/repository datastax migration performance (#146)

* Async Fetch of Experiment Metadata + custom performance logger + Minimize the impact of increase in # of experiments.

* Added comments and logging variable replacements

* Added uninterrupted implementations and unit tests..

* Self review: changed some comments and removed unused code..

* Addressed code review comments...

* Added specific imports and fixed one functional condition...

* Removed system.out from test class...

* Refactored ApiModule so common module installation will not be repeated (#149)

in child class and some modules installation can be overridden.

* Resolved functional test issue and added exception catch and error message while connecting to cassandra...

* 1. Changed version to 1.0.20161107232436-SNAPSHOT
2. Modified 2 props in cassandra_client_config.properties
isSlowQueryLoggingEnabled:False, poolTimeoutMillis:0
3. disabled attribution-maven-plugin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants