Wednesday, 2016-01-06

*** gampel1 has quit IRC01:18
*** gampel has joined #openstack-smaug05:43
*** WANG_Feng has quit IRC06:36
*** WANG_Feng has joined #openstack-smaug06:36
*** gampel has quit IRC06:39
openstackgerrityinwei proposed openstack/smaug: Basic design doc for Protection Service  https://review.openstack.org/26145506:54
openstackgerrityinwei proposed openstack/smaug: Basic design doc for Protection Service  https://review.openstack.org/26145507:06
*** gampel has joined #openstack-smaug07:15
zengyingzhesaggi, are you there?07:55
chenzenghi,gampel.  does the OperationEngine have another functions except triggering the protection operation, such as tracking the status of protection operation? thanks.08:26
saggizengyingzhe: now i am08:29
zengyingzheCan you add the Task definition to your pluggable_protection_provider.svg design?08:39
zengyingzheI see yinwei has designed the Task class in her patch, are those the agreement you guys reached?08:41
zengyingzhehttps://review.openstack.org/#/c/261455/4/doc/images/protection-service/class-diagram.png,unified08:41
chenzengsaggi: does the OperationEngine have another functions except triggering the protection operation, such as tracking the status of protection operation? thanks08:53
chenzengsaggi:do we need to add the ability of extending the OperationEngine nodes in the version 1. I think we can add it in the next version.08:57
saggichenzeng: It needs to track and manage high level transactions.09:00
saggichenzeng: For example, multiple deletions09:00
saggichenzeng: A checkpoint is an atomic entity, but if a task requires operations on multiple checkpoints it will require multiple operations in the workflow engine that will have to be tracked.09:01
zengyingzhesaggi, I don't see why a task need to operate on multiple checkpoints.09:11
zengyingzheCan you give us a instance?09:12
saggizengyingzhe: Delete all checkpoints older than 10 days.09:12
*** wangliuan has joined #openstack-smaug09:12
zengyingzheFor the instance of deleting checkpoints, what status we need to track, which checkpoints are deleted already? or in deleting progress?09:19
zengyingzheSomething like this?09:19
chenzengsaggi:sorry. can you describe the functions of OperationEngine more clearly. I can't understand the scenario you said.09:23
saggiLets say you have a policy to only keep checkpoints for one year. So when the deletion triggers it might need to delete more than one checkpoint. We will need to track all the deletions in Smaug.09:25
zengyingzheTrack what info exactly? What checkpoints already deleted and what in deleting progress?09:27
saggiYes09:28
saggiSmaug will supply the information about progress for the specific task09:28
zengyingzheSo that user can query this info?09:28
saggiyes09:28
saggiThe ProtectionService will track the single operation's status through the provider.09:29
saggiSo for policies that requires a single checkpoint will only need to handle errors and cases where the trigger was missed.09:31
saggiBut for policies that require more than one checkpoint operation it will need to track that.09:31
zengyingzheYou said this tracked by ProtectionService?09:34
saggiAlso the OperationEngine will need to track the log of tirggered operations and their results.09:34
saggiProtectionService tracks a single checkpoint operation.09:34
saggiWhen you create a checkpoint. You will get the progress information from the checkpoint objects.09:35
saggiBut if you want to create a checkpoint and then delete the oldest one (so you only have N checkpoints) you will need higher order logic.09:35
saggiThis will need to be defined in the OperationEngine09:35
saggiSince this is where higher order logic is defined.09:36
saggizengyingzhe: ok?09:37
zengyingzheYou mean OperationEngine tracks progress info for operation, and ProtectionService tracks progress info for checkpoint, their fineness different?09:37
chenzengsaggi:what the meaning of " higher order logic"?09:39
saggichenzeng: Policies that are composed of atomic operations.09:43
saggiThink of a calculator that has the Add(a,b).09:43
saggiYou can define Pow(a, b) or Mult(a, b) using Add(a, b).09:43
saggiAdd() is the atomic operation, Pow() and Mult() are higher order logic since they use low level Add()09:43
chenzengsaggi:you mean OperationEngin need track the result of each atomic operation?09:46
saggiYes and also compose them. For example if you want to have 10 checkpoints at once you need to create a new checkpoint and only after the creation was successful delete the 11th checkpoint.09:47
saggiThis logic is in the operation subclass. So we don't need to define all the policies now. But we do need to design the infra to allow operations to store status and transaction so that adding new policies is easy.09:48
saggichenzeng: ?10:03
chenzengsaggi: sorry. I am discussing with zengyinzhe now.10:08
saggichenzeng: no problem, just wanted to make sure you didn't miss this just because I didn't quote your nick.10:12
chenzengsaggi:ok. thanks.10:13
*** wangliuan has quit IRC10:16
*** WANG_Feng has quit IRC12:44
*** WANG_Feng has joined #openstack-smaug12:45
gampelHi yinwei:12:58
*** gampel1 has joined #openstack-smaug14:17
*** gampel has quit IRC14:19
*** gampel has joined #openstack-smaug14:20
*** gampel1 has quit IRC14:22
*** gampel1 has joined #openstack-smaug14:23
*** gampel has quit IRC14:26
*** WANG_Feng has quit IRC15:05
*** WANG_Feng has joined #openstack-smaug15:06
*** saggi has quit IRC15:28
*** saggi has joined #openstack-smaug16:04
*** gampel1 has quit IRC16:07
*** gampel has joined #openstack-smaug18:27
*** gampel1 has joined #openstack-smaug20:27
*** gampel has quit IRC20:31

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!