Thanks,

According to https://github.com/groonga/groonga/discussions/1698,
it will not affected during 64bit time_t transition in
practical use case.

There are some points.

* time_t is used but the value of it was treated as 64bit value
  internally. (See GRN_TIME_PACK. it use int64_t)

* last_modified field which stores time in object header use
  uint32_t, it will not break until 2106.

  Time.at(4294967295)
  => 2106-02-07 15:28:15 +0900

  It may be better to use uint64_t, but it breaks
  database compatibility. I'll wait upstream's decision.
 
* Time column is int64_t, even though it stores in microseconds,
  It is valid until 294247.

  Time.at(9223372036854775807 / 10**6)
  => 294247-01-10 13:00:54 +0900 

As a result, even though before/after rebuilding 64bit time_t
transtion with groonga, 
database itself does not require re-creating.

Reply via email to