diff --git a/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.cc b/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.cc index fe7b0ed75cfec..01525e0a32c25 100644 --- a/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.cc +++ b/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.cc @@ -359,6 +359,12 @@ google::cloud::StatusOr JobConfig::ParseArgs( flags_.push_back( {"--use-int64-timestamp=", "outputs timestamp as usec int64", [this](std::string const& v) { use_int64_timestamp = (v == "true"); }}); + flags_.push_back( + {"--timestamp-output-format=", + "sets timestamp output format", + [this](std::string const& v) { + timestamp_output_format = v; + }}); flags_.push_back( {"--min-creation-time=", "min job creation time. If set, only jobs created after or at this " diff --git a/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.h b/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.h index aaf908fabf0c1..99a75a8840c03 100644 --- a/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.h +++ b/google/cloud/bigquery/v2/minimal/benchmarks/benchmarks_config.h @@ -100,6 +100,7 @@ struct JobConfig : public Config { int start_index = 0; int timeout_ms; bool use_int64_timestamp; + std::string timestamp_output_format; bigquery_v2_minimal_internal::Projection projection; bigquery_v2_minimal_internal::StateFilter state_filter; diff --git a/google/cloud/bigquery/v2/minimal/internal/job_request.cc b/google/cloud/bigquery/v2/minimal/internal/job_request.cc index d8a7d3bdf1afb..a8d318b8d7983 100644 --- a/google/cloud/bigquery/v2/minimal/internal/job_request.cc +++ b/google/cloud/bigquery/v2/minimal/internal/job_request.cc @@ -343,6 +343,7 @@ std::string DataFormatOptions::DebugString(absl::string_view name, int indent) const { return internal::DebugFormatter(name, options, indent) .Field("use_int64_timestamp", use_int64_timestamp) + .Field("timestamp_output_format",timestamp_output_format) .Build(); } diff --git a/google/cloud/bigquery/v2/minimal/internal/job_request.h b/google/cloud/bigquery/v2/minimal/internal/job_request.h index 2c59df70d2e51..c641ad81cdf9f 100644 --- a/google/cloud/bigquery/v2/minimal/internal/job_request.h +++ b/google/cloud/bigquery/v2/minimal/internal/job_request.h @@ -313,12 +313,14 @@ struct DataFormatOptions { DataFormatOptions() = default; bool use_int64_timestamp = false; + std::string timestamp_output_format = "FLOAT64"; std::string DebugString(absl::string_view name, TracingOptions const& options = {}, int indent = 0) const; }; NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(DataFormatOptions, - use_int64_timestamp); + use_int64_timestamp, + timestamp_output_format); // Indicates the type of compute mode for the query stage. //