Skip to content

Commit

Permalink
Feature/repository datastax migration (#152)
Browse files Browse the repository at this point in the history
* 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
  • Loading branch information
bargenilesh committed Jan 11, 2017
1 parent 7b07204 commit 1b426ce
Show file tree
Hide file tree
Showing 305 changed files with 28,449 additions and 3,901 deletions.
483 changes: 197 additions & 286 deletions ATTRIBUTIONS/wasabi-analytics-attribution.xml

Large diffs are not rendered by default.

25 changes: 21 additions & 4 deletions ATTRIBUTIONS/wasabi-analytics-objects-attribution.xml
Original file line number Diff line number Diff line change
Expand Up @@ -922,6 +922,23 @@
<string>https://repo.maven.apache.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.7.2/jackson-databind-2.7.2.jar</string>
</downloadUrls>
</dependency>
<dependency>
<name>JaCoCo :: Agent</name>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.agent</artifactId>
<version>0.7.2.201409121644</version>
<projectUrl>http://org.jacoco.agent</projectUrl>
<type>pom</type>
<licenses>
<license>
<name>Eclipse Public License v1.0</name>
<url>http://www.eclipse.org/legal/epl-v10.html</url>
</license>
</licenses>
<downloadUrls>
<string>https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.agent/0.7.2.201409121644/org.jacoco.agent-0.7.2.201409121644.pom</string>
</downloadUrls>
</dependency>
<dependency>
<name>Java Agent for Memory Measurements</name>
<groupId>com.github.stephenc</groupId>
Expand Down Expand Up @@ -1500,7 +1517,7 @@
<name>wasabi-assignment-objects</name>
<groupId>com.intuit.wasabi</groupId>
<artifactId>wasabi-assignment-objects</artifactId>
<version>1.0.20161102190559-SNAPSHOT</version>
<version>1.0.20161103082910-SNAPSHOT</version>
<projectUrl>https://github.com/intuit/wasabi/modules/wasabi-assignment-objects</projectUrl>
<type>jar</type>
<licenses>
Expand All @@ -1515,7 +1532,7 @@
<name>wasabi-exceptions</name>
<groupId>com.intuit.wasabi</groupId>
<artifactId>wasabi-exceptions</artifactId>
<version>1.0.20161102190559-SNAPSHOT</version>
<version>1.0.20161103082910-SNAPSHOT</version>
<projectUrl>https://github.com/intuit/wasabi/modules/wasabi-exceptions</projectUrl>
<type>jar</type>
<licenses>
Expand All @@ -1530,7 +1547,7 @@
<name>wasabi-experiment-objects</name>
<groupId>com.intuit.wasabi</groupId>
<artifactId>wasabi-experiment-objects</artifactId>
<version>1.0.20161102190559-SNAPSHOT</version>
<version>1.0.20161103082910-SNAPSHOT</version>
<projectUrl>https://github.com/intuit/wasabi/modules/wasabi-experiment-objects</projectUrl>
<type>jar</type>
<licenses>
Expand All @@ -1545,7 +1562,7 @@
<name>wasabi-export</name>
<groupId>com.intuit.wasabi</groupId>
<artifactId>wasabi-export</artifactId>
<version>1.0.20161102190559-SNAPSHOT</version>
<version>1.0.20161103082910-SNAPSHOT</version>
<projectUrl>https://github.com/intuit/wasabi/modules/wasabi-export</projectUrl>
<type>jar</type>
<licenses>
Expand Down
Loading

0 comments on commit 1b426ce

Please sign in to comment.