public void setLocalTimeZone(ZoneId zoneId) {
        final String zone;
        if (zoneId instanceof ZoneOffset) {
            // Give ZoneOffset a timezone for backwards compatibility reasons.
            // In general, advertising either TZDB ID, GMT+xx:xx, or UTC is the best we can do.
            zone = ZoneId.ofOffset("GMT", (ZoneOffset) zoneId).toString();
        } else {
            zone = zoneId.toString();
        }
        validateTimeZone(zone);

        configuration.set(TableConfigOptions.LOCAL_TIME_ZONE, zone);
    }
@Test
    public void testInvalidGmtLocalTimeZone() {
        assertThatThrownBy(() -> CONFIG_BY_METHOD.setLocalTimeZone(ZoneId.of("GMT-8:00")))
                .isInstanceOf(DateTimeException.class)
                .hasMessage("Invalid ID for offset-based ZoneId: GMT-8:00");
    }