commit | 4736e5c743d98f70f2c781eb0824b5970c39bf25 | [log] [tgz] |
---|---|---|
author | Girish Gowdra <girish@opennetworking.org> | Wed Aug 25 15:19:10 2021 -0700 |
committer | Girish Gowdra <girish@opennetworking.org> | Thu Aug 26 07:50:35 2021 -0700 |
tree | 9e4cacd0873ec416834b69b30827ad6b6268343c | |
parent | 04386ee136a92f1016b019eb7c3162ad5e7c67e2 [diff] |
VOL-4312: Reboot OLT test fails on Edgecore GPON ASGvOLT64 OLT - Fixed issue where 'N*N' (where N is the number of PON ports) number of TP Managers were getting created for an OLT device instead of just 'N' TP managers. It was seen that after OLT reboot burst of conncurrent TP managers (N*N) were trying to create etcd pool connections and at some point the etcd stopped responding and this lead re-connection handling to OLT after reboot failing. VOL-4313: Stop stale go routines on monitoring flow and group messages for the ONUs after OLT reboot or OLT delete - There are stale go routines for the ONU monitoring for flow and group messages. Although these never caused problem it is always recomendded to stop such routines as they consume memory and cpu. Change-Id: Ie4d1ce9155dbd15e1831361d50cb959402045cc8
The OpenOLT adapter connects the VOLTHA core to an OLT device running the OpenOLT agent.
make
targetsThe Makefile
contains many commands that are useful in development:
build : Alias for 'docker build' clean : Removes any local filesystem artifacts generated by a build distclean : Removes any local filesystem artifacts generated by a build or test run docker-build-profile : Build openolt adapter docker image with profiling enabled docker-build : Build openolt adapter docker image docker-kind-load : Load docker images into a KinD cluster docker-push : Push the docker images to an external repository help : Print help for each Makefile target lint-dockerfile : Perform static analysis on Dockerfile lint-mod : Verify the Go dependencies lint : Run all lint targets local-lib-go : Copies a local version of the voltha-lib-go dependency into the vendor directory local-protos : Copies a local version of the voltha-protos dependency into the vendor directory mod-update : Update go mod files sca : Runs static code analysis with the golangci-lint tool test : Run unit tests
Some highlights:
It's recommended that you run the lint
, sca
, and test
targets before submitting code changes.
The docker-*
targets for building and pushing Docker images depend on the variables DOCKER_REGISTRY
, DOCKER_REPOSITORY
, and DOCKER_TAG
as described in the CORD documentation
If you make changes the dependencies in the go.mod
file, you will need to run make mod-update
to update the go.sum
and vendor
directory.
voltha-protos
or voltha-lib-go
If you want to build/test using a local copy of the voltha-protos
or voltha-lib-go
libraries this can be accomplished by using the environment variables LOCAL_PROTOS
and LOCAL_LIB_GO
. These environment variables should be set to the filesystem path where the local source is located, e.g.:
export LOCAL_PROTOS=/path/to/voltha-protos export LOCAL_LIB_GO=/path/to/voltha-lib-go
Then run make local-protos
and/or make local-lib-go
as is appropriate to copy them into the vendor
directory.
NOTE: That the files in the
vendor
directory are no longer what is in the most recent commit, and it will take manualgit
intervention to put the original files back.