Skip to content

Fix static events aggregation #264

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 25, 2018
Merged

Conversation

nalabjp
Copy link
Member

@nalabjp nalabjp commented Feb 25, 2018

#251
#262

static_event_historiesを作る際に重複してimportされてしまうというとんでもないバグがあったので直しました😓

@nalabjp
Copy link
Member Author

nalabjp commented Feb 25, 2018

10時の週次集計のためにマージしてしまいます。

@nalabjp nalabjp merged commit d315891 into master Feb 25, 2018
@nalabjp nalabjp deleted the fix-static-event-aggregation branch February 25, 2018 20:04
@yasulab
Copy link
Member

yasulab commented Feb 26, 2018

こちら対応ありがとうございます! 😸

@nalabjp 過去の重複分はまだデータベースに入ったままで、これから対応する必要がある感じですかね? 🤔💭 (最近の数字の上がり方が急激すぎるように見えるので 👀 )
https://coderdojo.jp/stats

2018/02/26時点の集計結果

開催回数
1823 回

参考: デブサミ発表 (2/16) 時点の集計結果

screen shot 2018-02-26 at 11 14 38

cf. https://speakerdeck.com/yasulab/coderdojo-japan-2018?slide=78

@nalabjp
Copy link
Member Author

nalabjp commented Feb 26, 2018

過去の重複分はまだデータベースに入ったまま

お、これ消したので、まだ多そうってことならまだなにかロジックにまずいところがあるかもです。

@yasulab
Copy link
Member

yasulab commented Feb 26, 2018

ですね🤔 急ぎというわけではないですが、念のためあとで調査していただけると助かります! 😸

@nalabjp
Copy link
Member Author

nalabjp commented Feb 27, 2018

irb(main):001:0> start_date = Time.zone.local(2012).beginning_of_year
=> Sun, 01 Jan 2012 00:00:00 JST +09:00
irb(main):002:0> end_date = Time.zone.parse('2018-02-06')
=> Tue, 06 Feb 2018 00:00:00 JST +09:00
irb(main):003:0> EventHistory.where(evented_at: start_date..end_date).count
D, [2018-02-28T04:10:02.962860 #4] DEBUG -- :    (2.4ms)  SELECT COUNT(*) FROM "event_histories" WHERE ("event_histories"."evented_at" BETWEEN $1 AND $2)[["evented_at", "2011-12-31 15:00:00"], ["evented_at", "2018-02-05 15:00:00"]]
=> 1759
irb(main):004:0> EventHistory.where(evented_at: end_date..Time.current).count
D, [2018-02-28T04:10:52.334976 #4] DEBUG -- :    (1.7ms)  SELECT COUNT(*) FROM "event_histories" WHERE ("event_histories"."evented_at" BETWEEN $1 AND $2)[["evented_at", "2018-02-05 15:00:00"], ["evented_at", "2018-02-27 19:10:52.332369"]]
=> 64
irb(main):005:0> EventHistory.where(evented_at: end_date..Time.current).group(:dojo_id).count
D, [2018-02-28T04:12:06.333190 #4] DEBUG -- :    (5.9ms)  SELECT COUNT(*) AS count_all, "event_histories"."dojo_id" AS event_histories_dojo_id FROM "event_histories" WHERE ("event_histories"."evented_at" BETWEEN $1 AND $2) GROUP BY "event_histories"."dojo_id"  [["evented_at", "2018-02-05 15:00:00"], ["evented_at", "2018-02-27 19:12:06.323347"]]
=> {34=>1, 82=>1, 81=>1, 32=>3, 10=>2, 42=>1, 11=>1, 18=>1, 117=>1, 98=>1, 54=>2, 123=>1, 57=>1, 72=>1, 23=>2, 41=>1, 35=>1, 75=>2, 86=>1, 31=>1, 65=>1, 76=>1, 110=>1, 5=>1, 116=>1, 44=>1, 87=>1, 9=>1, 91=>1, 37=>2, 70=>1, 64=>2, 46=>1, 27=>3, 17=>3, 68=>1, 15=>1, 118=>1, 125=>1, 66=>1, 30=>1, 4=>1, 121=>1, 60=>1, 104=>1, 33=>2, 73=>1, 6=>3, 102=>1}

見た感じおかしそうな数ではなさそうに見えますね。
2/6以降で3回開催されているdojoを見てみましたが、毎週開催のようですし。
2月は3連休があったので開催回数が多かったんでしょうか、3連休で開催したdojoが12もあったようです。

@yasulab
Copy link
Member

yasulab commented Mar 6, 2018

結論: 直感が間違ってて、数字が正しかった...!!! 📈 ✨

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants