private void valueTest(boolean local) {
    //exercise a broad range of timestamps close to the present.
    verifyTsString("2011-01-01 01:01:01.111111111", local);
    verifyTsString("2012-02-02 02:02:02.222222222", local);
    verifyTsString("2013-03-03 03:03:03.333333333", local);
    verifyTsString("2014-04-04 04:04:04.444444444", local);
    verifyTsString("2015-05-05 05:05:05.555555555", local);
    verifyTsString("2016-06-06 06:06:06.666666666", local);
    verifyTsString("2017-07-07 07:07:07.777777777", local);
    verifyTsString("2018-08-08 08:08:08.888888888", local);
    verifyTsString("2019-09-09 09:09:09.999999999", local);
    verifyTsString("2020-10-10 10:10:10.101010101", local);
    verifyTsString("2021-11-11 11:11:11.111111111", local);
    verifyTsString("2022-12-12 12:12:12.121212121", local);
    verifyTsString("2023-01-02 13:13:13.131313131", local);
    verifyTsString("2024-02-02 14:14:14.141414141", local);
    verifyTsString("2025-03-03 15:15:15.151515151", local);
    verifyTsString("2026-04-04 16:16:16.161616161", local);
    verifyTsString("2027-05-05 17:17:17.171717171", local);
    verifyTsString("2028-06-06 18:18:18.181818181", local);
    verifyTsString("2029-07-07 19:19:19.191919191", local);
    verifyTsString("2030-08-08 20:20:20.202020202", local);
    verifyTsString("2031-09-09 21:21:21.212121212", local);

    //test some extreme cases.
    verifyTsString("9999-09-09 09:09:09.999999999", local);
    verifyTsString("0001-01-01 00:00:00", local);
  }
17:00 PDT = 00:00 GMT (daylight-savings)
(0*60*60 + 1*60 + 1)*10e9 + 1 = 61000000001, or

17:00 PST = 01:00 GMT (if not daylight savings)
(1*60*60 + 1*60 + 1)*10e9 + 1 = 3661000000001
ql/src/test/org/apache/hadoop/hive/ql/io/parquet/serde/TestParquetTimestampUtils.java