Badges not being assigned when they should be...



  • Continuing the discussion from Shoulder whoosh:

    @Maciejasjmj said:

    Make it a 'where category like '%Lounge%''

    The Lounge is set to be badge-compatible, badges don't appear to be being assigned.

    [postgres@sofa ~]$ NAME=%met% sql_tdwtf badges_by_cat
    
    SELECT ub.granted_at, ub.post_id, u.username, b.name, c.name
        FROM user_badges ub
        JOIN users u ON u.id=ub.user_id
        JOIN badges b ON b.id=ub.badge_id
        JOIN posts p on p.id=ub.post_id
        JOIN topics t on t.id=p.topic_id
        JOIN categories c on c.id = t.category_id
        WHERE c.name ilike '%met%' AND
            ub.post_id IS NOT NULL
        ORDER BY ub.granted_at DESC
        LIMIT 25;
    
    
             granted_at         | post_id |   username   |                                      name                                       | name
    ----------------------------+---------+--------------+---------------------------------------------------------------------------------+------
     2015-02-03 16:17:48.277239 |  220178 | PJH          | Nice Topic                                                                      | Meta
     2015-01-31 01:18:37.772231 |  216862 | EvanED       | Nice Post                                                                       | Meta
     2015-01-31 01:18:37.772231 |  216862 | EvanED       | Mediocre Poster                                                                 | Meta
     2015-01-30 02:39:49.618841 |  215458 | Polygeekery  | Nice Post                                                                       | Meta
     2015-01-30 02:39:49.618841 |  215458 | Polygeekery  | Mediocre Poster                                                                 | Meta
     2015-01-29 17:53:02.2891   |  214838 | ben_lubar    | Nice Topic                                                                      | Meta
     2015-01-29 17:53:02.2891   |  214838 | ben_lubar    | Mediocre Topic                                                                  | Meta
     2015-01-29 04:01:23.370175 |  214040 | chubertdev   | Nice Post                                                                       | Meta
     2015-01-29 04:01:23.370175 |  214040 | chubertdev   | Mediocre Poster                                                                 | Meta
     2015-01-28 17:33:23.42615  |  212981 | loopback0    | Mediocre Poster                                                                 | Meta
     2015-01-28 17:33:23.42615  |  212981 | loopback0    | Nice Post                                                                       | Meta
     2015-01-28 02:04:22.086342 |  114450 | abarker      | Mediocre Topic                                                                  | Meta
     2015-01-28 02:02:48.181134 |  212162 | RaceProUK    | Mediocre Poster                                                                 | Meta
     2015-01-28 02:02:48.181134 |  212162 | RaceProUK    | Nice Post                                                                       | Meta
     2015-01-25 14:25:27.061511 |  208612 | HardwareGeek | Knight Pedantic Dickweed of the Most Honourable Order of the Bath (sql version) | Meta
     2015-01-24 18:16:05.553664 |  208262 | HardwareGeek | Knight Pedantic Dickweed of the Most Honourable Order of the Bath (sql version) | Meta
     2015-01-24 18:16:05.553664 |  208262 | HardwareGeek | Viscount Pedantic Dickweed of the Most Noble Order of the Garter                | Meta
     2015-01-24 17:54:22.398302 |  208251 | HardwareGeek | Nice Post                                                                       | Meta
     2015-01-24 17:54:22.398302 |  208251 | HardwareGeek | Mediocre Poster                                                                 | Meta
     2015-01-23 14:51:39.00386  |  206711 | abarker      | Knight Pedantic Dickweed of the Most Honourable Order of the Bath (sql version) | Meta
     2015-01-22 19:15:08.096002 |  205092 | flabdablet   | First Flag                                                                      | Meta
     2015-01-22 08:11:53.229736 |  190840 | Uwe_Keim     | First Like                                                                      | Meta
     2015-01-21 23:52:45.819731 |  204689 | Maciejasjmj  | Mediocre Poster                                                                 | Meta
     2015-01-21 23:52:45.819731 |  204689 | Maciejasjmj  | Nice Post                                                                       | Meta
     2015-01-21 19:44:31.072363 |  203939 | boomzilla    | Nice Post                                                                       | Meta
    (25 rows)
    
    Elapsed: 0.416s
    Backup taken:  2015-02-04 03:58:44.363412
    [postgres@sofa ~]$ NAME=%loung% sql_tdwtf badges_by_cat
    
    SELECT ub.granted_at, ub.post_id, u.username, b.name, c.name
        FROM user_badges ub
        JOIN users u ON u.id=ub.user_id
        JOIN badges b ON b.id=ub.badge_id
        JOIN posts p on p.id=ub.post_id
        JOIN topics t on t.id=p.topic_id
        JOIN categories c on c.id = t.category_id
        WHERE c.name ilike '%loung%' AND
            ub.post_id IS NOT NULL
        ORDER BY ub.granted_at DESC
        LIMIT 25;
    
    
     granted_at | post_id | username | name | name
    ------------+---------+----------+------+------
    (0 rows)
    
    Elapsed: 0.15s
    Backup taken:  2015-02-04 03:58:44.363412
    [postgres@sofa ~]$
    

  • Banned

    hardcoded, you can't give people badges on private categories, I need to fix the UI to communicate that.

    its just a can of worms, why did sam get that badge? well you need to be special to see that. To simplify the system I decided that private cats are a no go.



  • So my previous generic assumption of 'if google can't see it, it's not in badge_posts' was/still is right?



  • @sam said:

    you can't give people badges on privatelocked categories, I need to fix the UI to communicate that.

    FTFY



  • @PJH said:

    So my previous generic assumption of 'if google can't see it, it's not in badge_posts' was/still is right?

    Specifically, regarding this bit...

    @sam said:

    you can't give people badges on private categories

    My own queries will work in non-public categories (if I don't use badge_posts) won't they? Or are my own queries being subverted somehow?


  • Banned

    if its assigned to a specific post it will always go via badge posts so its subverted.



  • Well that screws up some of my badges then.


  • Banned


  • Banned

    We would need a UI change if we were to allow this, that basically hides the reason from badges where you are not allowed to see the reason.



  • How about simply not showing the badge at all (on the badge pages) if the person viewing wouldn't have access to the reason?




  • kills Dumbledore



  • I moved 15 posts to a new topic: Emoji uploading



  • I guess I'll stop being funny in the lounge.



  • Well, it's looking like doing so won't get you forumpointzzzzz no matter how softly I speak in SQL.


  • area_deu

    So the noSQL badges still have a purpose?


  • kills Dumbledore

    Are you suggesting staff manually trawl through restrictedlocked categories to give mediocre post badges?

    I'm happy with that



  • Requesting @Jaloopa be promoted to badge staff.



  • @Jaloopa said:

    Are you suggesting staff manually trawl through restrictedlocked categories to give mediocre post badges?

    Only if you award them all to blakey.



  • @Jaloopa said:

    Are you suggesting staff manually trawl through restrictedlocked categories to give mediocre post badges?

    For clarity, some manually awarded badges are awarded by a mod/admin replying in a particular way to the post that earned the badge. Then a query notices that and awards the badge, linking it to the appropriate post. However, since stuff in, e.g., the Lounge isn't seen by that query, those flagged posts would require a staff member to put the badge in the old fashioned way.



  • @boomzilla said:

    However, since stuff in, e.g., the Lounge isn't seen by that query, those flagged posts would require a staff member to put the badge in the old fashioned way.

    I'm actually going to test this....

    Just an edit to kick the badge into action, maybe.



  • This one however might not be as painless...

    447dddd0-ae00-11e4-ab27-0800200c9a66



  • 😟



  • Well that was interesting, even when not logged in I can see badges I shouldn't be able to...



  • Is Nice Post supposed to be awarded outside of /t/1000?

    I've not really paid attention to it before, but:


  • BINNED

    AFAIK there's a list of topics that, once they start generating a ridiculous amount of mediocre badges, @PJH puts on a special list along with the "Likes" topic.


  • SockDev

    @loopback0 said:

    Is Nice Post supposed to be awarded outside of /t/1000?

    yes. that's the default likes badger.

    @Onyx said:

    @PJH puts on a special list along with the "Likes" topic.

    he used to, now he just drops a certain UUID in them and the custom badges ignore them.



  • @loopback0 said:

    Is Nice Post supposed to be awarded outside of /t/1000?

    Yep. It's a default, generic "get 10 likes" badge. So whenever you get "Mediocre Poster", you also get "Nice Post" to go with it.



  • @accalia said:

    yes. that's the default likes badger.

    That does make sense.
    I only noticed because I had Nice Post and Medicore Poster awarded at the same time for the same post, and I don't recall that happening before.



  • @loopback0 said:

    Is Nice Post supposed to be awarded outside of /t/1000?

    Yes. It's a stock badge. You'll get it along with the site specific badges.



  • Huh, that's interesting. I only got nice topic for http://what.thedailywtf.com/t/flower-bulbs-are-not-vegetables/7971, no mediocre topic to go with it. Is the topic too short?



  • Pass - you should have got them at the same time... I'll have a dig a bit later.

    Nice topic:

        SELECT p.user_id, p.id post_id, p.updated_at granted_at
        FROM badge_posts p
        WHERE p.post_number = 1 AND p.like_count >= 10 AND
          (:backfill OR p.id IN (:post_ids) )
    

    Mediocre topic:

    SELECT p.user_id, p.id post_id, p.updated_at granted_at
    FROM badge_posts p
    WHERE p.post_number = 1 AND 
        p.like_count >= 10 AND
        (:backfill OR p.id IN (:post_ids) )
    


  • @sam said:

    slim pickings

    Have you tried puns?



  • FYI, I just received Mediocre Topic as well


  • SockDev

    my guess is thanks to discoursistency the queries don't trigger at the same time. so one fires than some amount of discotime later the other one does.



  • @PleegWat said:

    FYI, I just received Mediocre Topic as well

    Backfill finally triggering at a guess...


Log in to reply
 

Looks like your connection to What the Daily WTF? was lost, please wait while we try to reconnect.