void writeLong(int repetitionLevel, long value) {
      long julianUs = value + JULIAN_DAY_OF_EPOCH * MICROS_PER_DAY;
      int day = (int) (julianUs / MICROS_PER_DAY);
      long nanos = MICROSECONDS.toNanos(julianUs % MICROS_PER_DAY);
      writeBinary(repetitionLevel, day, nanos);
    }
Writes Julian day and nanoseconds in a day from the number of microseconds

@param value epoch time in microseconds
amoro-format-mixed/amoro-mixed-spark/v3.2/amoro-mixed-spark-3.2/src/main/java/org/apache/iceberg/spark/data/AdaptHiveSparkParquetWriters.java