how to patch
来源:互联网 发布:盈建科软件的钢号 编辑:程序博客网 时间:2024/06/07 06:18
Please help to patch Storage-17443 for Ginger
Patch branch is bugfix-release-ecs-3.1-Ginger-7468cdof
git checkout Destination branch: bugfix-release-ecs-3.1-Ginger-7468cdof
git pull origin bugfix-release-ecs-3.1-Ginger-7468cdof
enter JIRA found commit :17443
git cherry-pick commit_number
enter container: tools/webstorage/enter.sh .
start build(about 15mins) : ./gradew clean all
scp build/lib/Storageos-blobsvc.jar admin@10.247.198.60:/home/admin
ls
md5sum Storageos-blobsvc.jar
cat MACHINES
viprapplypatch MACHINES Storageos-blobsvc.jar
restart svc : viprexec -c kill `pidof blobsvc`
涉及到权限在命令前加sudo
停止 viprexec -c ` md5sum /opt/Storageos/lib/Storageos-blob.jar`
针对JIRA STORAGE-10000创建一个分支,gitcheckout -b bugfix-STORAGE-10000-branch-name
两种修改同步devkit和windows的方法
1. 在windows, git commit -a -m "some comment"
再git push origin bugfix-STORAGE-10000-branch-name
2. 在devkit上,git pull origin bugfix-STORAGE-10000-branch-name
方法二:
1. 在windows,git diff > temp.diff
2. 在windows,scp temo.diff到devkit
3. 在devkit上 git apply xxx.diff
Devkit
./gradlew :client:jar (编译client模块)
make clean clobber rpm&& tools/webstorage/deployment.sh SetupViprNodes(Setup ECS Datanodes)
登录container: nsenter -i -m -p -u -t `pidof cm`
查看storageserver进程 ps -ef| grep storageserver
kill进程: kill pidnum 或者 kill `pidof storageserver`
查看进程是否被kill: ps -ef | grepstorageserver
重新启动storageserver进程: /opt/storageos/bin/monitor -u 444 -g 444 -c / -l/opt/storageos/logs/storageserver.out -p /var/run/storageserver.pid -i 40 -I 40/opt/storageos/bin/storageserver \"--config\" /opt/storageos/conf/storageserver.conf\"--partitionconfig\" /data/partitions.json
查看进程是否重新启动: ps -ef | grep storageserver
查看log信息: cd /var/log
vim dataheadsvc.log 或者 tail -F dataheadsvc.log
Apply patch:
1.修改了代码以后
./gradlew clean all
2.替换jar包
在container中的/opt/storageos/lib/目录下(以client为例)
mv storageos-client.jarstorageos-client.jar.old && scproot@10.247.97.202:/opt/MyWorkSpace/EMC/Storage/Quasar/Std/storage/datasvc/libs/client/build/libs/storageos-client.jar .
3.重启service,有两种方法重启进程
方法一: ()
1. servicestorageos_dataservice 速度比较慢
2.用curlhttp://localhost:9101/stats/dt/DTInitStatDT是否恢复成功
方法二:
1.kill `pidof***`
kill`pidof dataheadsvc`
UT Test
以Client的BufferedFileWriter UT为例
在log4j2.xml 中下面这条语句的意思就是改log level为DEBUG
<Loggername="com.emc.storageos.data.object" level="DEBUG" />
将改好log4j2.xml放在这里:datasvc/libs/client/src/main/test
运行UT: ./gradlew:client:test -Dtest.single=BufferedFileWriterTest -Plog4jConf=datasvc/libs/client/src/main/test/log4j2.xml
查看log :vi datasvc/libs/client/build/test.log
- how to patch
- How to patch the linux kernel patch
- How to patch your OpenBSD
- How to make a patch
- How to patch in YOCTO
- How to submit a patch to upsream
- How to send patch to Linux upstream
- How to make patch for linux
- How to apply the Kernel patch & How to generate a Kernel patch
- How to contribute your first patch to Mesos
- How to find and patch an injected DLL
- How to create and apply a patch with git
- 如何打Android的补丁包------how to patch android
- How to patch and rebuild an RPM package
- How to create and apply a patch with Git
- How to add the patch in apache community?
- How to make 9-patch image downloaded from the Network
- How to apply a patch/diff and solve “hunk FAILED”, “can’t find file to patch” and others
- 设计模式 -- 组合模式的一次运用实践
- springBoot 学习
- 网页打不开,设置dns
- erp实施顾问
- svn更新出现冲突的解决方法
- how to patch
- linux网络协议栈内核分析
- Java程序员到架构师的推荐阅读书籍
- 《如何阅读一本书》读书笔记
- php5.4下phalcon2.0安装
- 打算学习图像算法要准备些什么基本的东西呢
- VIM编辑器之常用命令
- 第5课
- C++析构函数为什么要为虚函数