Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-44273

Application of DST in Brazil changed in 2019, affecting America/Sao_Paulo timezone resolution

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Waiting For User Input
    • Priority: Major - P3
    • Resolution: Unresolved
    • Affects Version/s: 4.0.13, 4.2.1, 3.6.15
    • Fix Version/s: None
    • Component/s: Querying
    • Labels:
      None
    • Operating System:
      ALL
    • Steps To Reproduce:
      Hide

      criar um registro na coleção useevents

      db.getCollection('useevents').insert({
      "registeredAt" : ISODate("2019-10-27T02:00:30.627Z")
      })

      executar um aggregate

      db.getCollection('useevents').aggregate([{"$group":{"_id":{ "day":{"$dayOfMonth":{"date":"$registeredAt","timezone":"America/Sao_Paulo"}}},"count":{"$sum":1}}}])

      resultado esperado

      {
       "_id" : {
       "day" : 26
       },
       "count" : 1.0
      }

      resultado obtido

      {
       "_id" : {
       "day" : 27
       },
       "count" : 1.0
      }

      se alterarmos o aggregate executando colocando o offset manualmente, o resultado esperado é alcançado

      db.getCollection('useevents').aggregate([
       {"$group":{"_id":{ 
       "day":{"$dayOfMonth":{"date":"$registeredAt","timezone":"-03:00"}}},"count":{"$sum":1}}}])

      Show
      criar um registro na coleção useevents db.getCollection('useevents').insert({ "registeredAt" : ISODate("2019-10-27T02:00:30.627Z") }) executar um aggregate db.getCollection('useevents').aggregate([{"$group":{"_id":{ "day":{"$dayOfMonth":{"date":"$registeredAt","timezone":"America/Sao_Paulo"}}},"count":{"$sum":1}}}]) resultado esperado { "_id" : { "day" : 26 }, "count" : 1.0 } resultado obtido { "_id" : { "day" : 27 }, "count" : 1.0 } se alterarmos o aggregate executando colocando o offset manualmente, o resultado esperado é alcançado db.getCollection('useevents').aggregate([ {"$group":{"_id":{ "day":{"$dayOfMonth":{"date":"$registeredAt","timezone":"-03:00"}}},"count":{"$sum":1}}}])
    • Case:

      Description

      Aparentemente o mongo está resolvendo o timezone America/Sao_Paulo com o offset de horário de verão que esse ano não foi aderido no Brasil.

      O offset hoje é -03:00 e aparentemente o mongo está usando -02:00

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                1 Vote for this issue
                Watchers:
                11 Start watching this issue

                Dates

                • Created:
                  Updated: