RFR: JDK-8266536: Provide a variant of os::iso8601_time which works with arbitrary timestamps

Xin Liu xliu at openjdk.java.net
Thu May 6 04:43:12 UTC 2021


On Wed, 5 May 2021 04:31:57 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:

> We have os::iso8601_time(), which gives an ISO8601 timestamp of the current time. It would be very useful to have a second variant which can be fed an arbitrary numerical timestamp.
> 
> This is useful in the context of making asynchronous UL logging cheaper (see JDK-8229517)
> 
> This patch provides an additional API: 
> `char* os::iso8601_time(jlong milliseconds_since_19700101, char* buffer, size_t buffer_length, bool utc);`
> alongside the existing
> `char* os::iso8601_time(char* buffer, size_t buffer_length, bool utc);`
> and implements the latter using the former. Not much code added.
> 
> In addition, it adds a regression gtest for these APIs.
> 
> Please ignore the harfbuzz change, its a build fix needed for older gcc, will be removed before final push.
> 
> Testing: GHA, manual gtests, SAP nightlies on all our platforms.
> 
> Thanks, Thomas

The API change looks good to me. I understand that this is prerequisite of your logdecoration change. make sense.

I don't understand your change in harfbuzz header.

src/java.desktop/share/native/libharfbuzz/hb-ot-shape-complex-use-machine.hh line 378:

> 376: {
> 377:         machine_index_t (const Iter& it) : it (it) {}
> 378:         machine_index_t (const machine_index_t& o) : hb_iter_with_fallback_t<machine_index_t<Iter>, typename Iter::item_t>(o), it (o.it) {}

is it relevant?  
I feel it belongs to a separated issue.

-------------

Marked as reviewed by xliu (no project role).

PR: https://git.openjdk.java.net/jdk/pull/3869


More information about the hotspot-runtime-dev mailing list