Monday, 2024-05-13

opendevreviewPedro Henrique Pereira Martins proposed openstack/cloudkitty master: Introduce start and end dates on rating rules  https://review.opendev.org/c/openstack/cloudkitty/+/87664311:28
opendevreviewMerged openstack/cloudkitty master: Add rating modules PUT endpoint to v2 API  https://review.opendev.org/c/openstack/cloudkitty/+/68474711:58
opendevreviewMerged openstack/cloudkitty master: CI: Remove grenade branch variables  https://review.opendev.org/c/openstack/cloudkitty/+/91831412:31
seunghunleeHello!14:00
mattcreeso/14:01
rafaelweingartner#startmeeting cloudkitty14:01
opendevmeetMeeting started Mon May 13 14:01:27 2024 UTC and is due to finish in 60 minutes.  The chair is rafaelweingartner. Information about MeetBot at http://wiki.debian.org/MeetBot.14:01
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.14:01
opendevmeetThe meeting name has been set to 'cloudkitty'14:01
rafaelweingartnerHello guys!14:01
rafaelweingartnerRoll count14:01
mattcreesHello!14:01
rafaelweingartner\o14:01
priteauo/14:02
mkarpiarzHi!14:02
rafaelweingartner#topic Storyboard status14:02
rafaelweingartnerpriteau: you have been review storyboard14:03
rafaelweingartnerdo you need some help to conduct the work there?14:03
priteauFeel free to do some triaging, as I won't have much time in the next two weeks14:03
rafaelweingartnerok14:04
rafaelweingartnerthanks for the work done so far!14:04
rafaelweingartnerabout the deprecation of old branches14:06
rafaelweingartner#topic Old branches deprecation/deletion14:06
rafaelweingartnercan we delete/remove victoria and wallaby branch?14:06
rafaelweingartnerthen, we will not have issues such as #link https://review.opendev.org/c/openstack/cloudkitty/+/91111914:06
rafaelweingartnerand #link https://review.opendev.org/c/openstack/cloudkitty/+/91112514:06
priteauI would vote for removal14:07
priteauCan you propose a patch in the releases repo?14:07
mkarpiarzSame14:07
mkarpiarz(meaning I agree we should remove these branches)14:08
seunghunleeI agree as well14:08
rafaelweingartnerSure14:08
rafaelweingartnerI will do so then14:08
rafaelweingartner#topic Target reviews14:09
rafaelweingartnerthis patch #link https://review.opendev.org/c/openstack/cloudkitty/+/917445, is a cherry-pick14:09
rafaelweingartnerI just triggered a recheck to see what happens14:09
rafaelweingartnerbut if it passes, we can merge it14:09
mkarpiarzOK14:10
rafaelweingartnerthen, we have #link https://review.opendev.org/c/openstack/cloudkitty/+/87664314:11
rafaelweingartnerwhich is the start/end dates patch14:11
rafaelweingartnerThis one has been in the making for quite a while, but it should be fine to merge it. I mean, there might always appear some need to do some twiking, but nothing that should hold the merge. Right?14:11
priteauI still don't fully understand why we need a start timestamp in the database.14:13
rafaelweingartnerhow do you decide when a rating rule should be applied?14:14
rafaelweingartnerThis is explained in the spec14:14
rafaelweingartnerlet's say we want to schedule a new price to start being applied in 01/01/202514:14
rafaelweingartnerhow do you do that?14:14
rafaelweingartnerOf course, one can always wake up in 31/12/2024, and run the command at 23:58. Or then, schedule a cron to run. However, that makes a system shaky at best. It is not possible to do a simpel task as scheduling a new price to be applied.14:15
priteauIn this case the start time would be 2025-01-01 of course14:15
rafaelweingartnerexactly14:16
rafaelweingartnerbut Cloudkitty does not have a mechanism to do that right now.14:16
priteauThat's why you are proposing this patch. I am not objecting to the patch itself, just curious why we could not make it so that (start = NULL) means that the rating rule is valid from anytime in the past14:17
rafaelweingartnerah yes14:18
rafaelweingartneryou are talking about the current situation, meaning the migration path14:18
rafaelweingartnerfrom the rules that exist in the database, where there is no start time, to the patch structure, where there is a start time column14:18
rafaelweingartnerStart time is mandatory, therefore, we need to define it; according to the definition we created. Otherwise, when we reprocess, we also would be causing problems, as the reprocessing could affect the result.14:20
rafaelweingartnerI mean, with the patch, if no start time is passed, the current timestamp is used. 14:20
rafaelweingartnerwith respect to the migration. We can use null and assume it represents that the rule is valid since ever, or use a timestamp as Pedro did14:21
rafaelweingartnerthere is no difference in the outcome14:21
rafaelweingartnerit is just a difference on how to represent things14:21
rafaelweingartnerPedro used the first time stamp when CloudKitty was first created14:21
priteauDoes this mean that with this patch, if you create a new rating rule with no extra argument about start/end like before, it will apply only starting at the current time?14:21
rafaelweingartnerthen you suggested the timestamp 014:21
rafaelweingartnerexactly14:21
rafaelweingartnerand no end 14:22
rafaelweingartnerwhich means, a rule that starts now, and is valid forever14:22
rafaelweingartnerwhich is how CLoudKitty works now14:22
rafaelweingartnerif I create a rule now, it will be applied in the next processing Cycle14:22
priteauI think this may be an issue because it changes the behaviour of CloudKitty substantially.14:23
priteauUnless I misunderstood14:23
priteauBefore this change, you could add a rating rule and then call reprocess on a past period, it would apply the rule to the reprocessing14:24
rafaelweingartnerno it does not14:24
rafaelweingartneryou still can14:24
rafaelweingartnerwe implemented reprocessing, we use it quite a lot14:24
opendevreviewPedro Henrique Pereira Martins proposed openstack/cloudkitty master: Introduce start and end dates on rating rules  https://review.opendev.org/c/openstack/cloudkitty/+/87664314:24
rafaelweingartner#link https://review.opendev.org/c/openstack/cloudkitty/+/876643/19/cloudkitty/rating/hash/controllers/mapping.py#15514:24
rafaelweingartnerthere is a force parameter to allow operators to create a rating rule in the past, if they wish so14:25
rafaelweingartnerbut this has effects in the reprocessing, that is why we introduced this flag with a default to false14:25
priteauBut if they don't change anything to their workflow. Assume they don't know about these API changes. What happens?14:25
rafaelweingartnerI do not get your question14:26
rafaelweingartneryou mean, if they try to create a rating rule in the past?14:26
rafaelweingartnerOr if they create a rating rule and reprocess?14:26
priteauIgnore the timestamps completely from the operator point of view14:26
rafaelweingartnerwhich timestamp?14:27
priteaustart/end14:27
rafaelweingartnerthe start or the end? Or both?14:27
priteauThey create a new rating rule without any start/end because they use the exact same process as before14:27
rafaelweingartnerok14:27
priteauThen they call reprocess on a past period14:27
priteauWill the rating rule be applied to this period?14:27
rafaelweingartnerI see, the newly created rating rule is not going to be used14:28
rafaelweingartneras the operator did not inform the start timestamp14:28
priteauAnd before this change it would have been used14:28
rafaelweingartneryes14:28
rafaelweingartnerbut before this you could not schedule14:28
rafaelweingartneryou would not be able to reprocess "safely", knowing the result14:29
rafaelweingartnerIt was always using whatever you have14:29
priteauI think there is an argument for keeping the behaviour the same and making start/end more optional.14:30
rafaelweingartneris there?14:30
priteauWhen we deploy a new cloud, we often make some iterative changes to the rating rules until we get to a "finalised" version14:33
priteauWhen we are happy with the rating rules, we can reprocess the data to apply them.14:33
priteauThat won't work the same anymore.14:33
rafaelweingartneryes, you can do the same14:34
rafaelweingartnerjust use the force flag with a timestamp in the past, such as the moment when you start the testing for instance14:34
rafaelweingartneror, with the timestamp when you started the project14:35
rafaelweingartnerthat would actually be more informative for people reviewing those values in the future14:35
rafaelweingartnerbear in mind that the patch is implementing the aproved spec: https://github.com/openstack/cloudkitty-specs/commit/fe84ac27c55ab05301582484979e8a9f72a538b014:36
priteauBut you see that it requires changes from the client side, we are breaking compatibility. If we had microversions it would be less of a worry.14:36
rafaelweingartnerI see what you mean, but it is a communication detail14:37
rafaelweingartnerthat we can do14:37
rafaelweingartnerand propagate this message to operators via the release notes, for instance14:37
rafaelweingartnerfor setups already in production that would probably not be a problem14:37
rafaelweingartneras people would not normally change rating rules in the past14:38
rafaelweingartneras a matter of fact, the only reason for this to happen, and then to trigger a reprocessing that we saw14:38
rafaelweingartnerwas when new prices had to be applied, and people would create the new price rule, and reprocess14:39
rafaelweingartneras we did not have a schedule mechanism14:39
rafaelweingartnerafter doing that, it has been 2 years that we have not seen the need for such  process14:39
priteauAt the very least we need to document better the behaviour change14:41
rafaelweingartnerOk14:42
rafaelweingartnerI will discuss with Pedro14:42
rafaelweingartnercan you suggest what you have in mind?14:42
priteauAt least an upgrade note describing the behaviour change14:43
rafaelweingartnerok14:43
priteauSomething in doc/source too would be nice14:43
rafaelweingartnerthanks for the insights 14:43
rafaelweingartnerbesides that, we have #link https://review.opendev.org/c/openstack/cloudkitty/+/91698614:46
rafaelweingartnerwhich needs some update/checking as the gate is passing14:46
priteauI've rebased it14:48
rafaelweingartnerok, thanks!14:48
rafaelweingartnerand, I guess that was all from our side14:49
rafaelweingartnerdo you guys have something else to add?14:49
mkarpiarzNope14:49
priteauThanks for getting the stable fixes merged14:49
priteaumkarpiarz: Any news on your new email address?14:50
mkarpiarzSorry, I need to leave it as is now.14:51
rafaelweingartnerthank you all for participating.14:51
rafaelweingartnerHave a nice week.14:51
rafaelweingartner#endmeeting14:51
opendevmeetMeeting ended Mon May 13 14:51:57 2024 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)14:51
opendevmeetMinutes:        https://meetings.opendev.org/meetings/cloudkitty/2024/cloudkitty.2024-05-13-14.01.html14:51
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/cloudkitty/2024/cloudkitty.2024-05-13-14.01.txt14:51
opendevmeetLog:            https://meetings.opendev.org/meetings/cloudkitty/2024/cloudkitty.2024-05-13-14.01.log.html14:51
priteauBye rafaelweingartner14:52
seunghunleeThank you14:53
opendevreviewPedro Henrique Pereira Martins proposed openstack/cloudkitty master: Introduce start and end dates on rating rules  https://review.opendev.org/c/openstack/cloudkitty/+/87664319:00
opendevreviewPedro Henrique Pereira Martins proposed openstack/cloudkitty master: Introduce start and end dates on rating rules  https://review.opendev.org/c/openstack/cloudkitty/+/87664319:04
opendevreviewPedro Henrique Pereira Martins proposed openstack/cloudkitty master: Introduce start and end dates on rating rules  https://review.opendev.org/c/openstack/cloudkitty/+/87664320:45

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!