- [enhancement] Add TIME type conversion to string converter (Thanks to p-eye)
- [maintenance] Fix GitHub Actions #166
- [maintenance] Fix gcs_client in order to load data using gcs_bucket parameter (Thanks to kashira202111) #164
- [maintenance] Prevent creating unnecessary tables. (Thanks to kashira202111) #148
- [enhancement] Support description of columns and tables (Thanks to @kyoshidajp and @fagai ) #142
- [maintenance] Add missing GitHub Actions environment setting. #160
- [maintenance] Replace google-api-client with specific Google APIs (Thanks to @Nozomuts) #161
- [maintenance] Update GitHub Actions use checkout@v4 and setup-java@v4 #162
- [enhancement] Add support Embulk 0.11.x
- [enhancement] Add SSLException to retry job (thanks to @mzumi)
- [enhancement] Support JSON type (thanks to @civitaspo )
- [maintenance] Add an error message in order to retry (thanks to @mzumi)
- [enhancement] Add an expiration option of temporary table to clean up (thanks to @TKNGUE)
- [maintenance] Fix network retry function (thanks to @case-k-git)
- [enhancement] Allow to specify the billing project and the project to which the data will be loaded separately (thanks to @ck-fm0211)
- [enhancement] Include original error message on json parse error (thanks to @k-yomo)
- [maintenance] Fix failed tests (thanks to @kyoshidajp)
- [maintenance] Lock representable version for avoiding requiring Ruby 2.4 (thanks to @hiroyuki-sato)
- [enhancement] Add DATETIME type conveter (thanks to @kekekenta)
- [enhancement] Add DATE type conveter (thanks to @tksfjt1024)
- [maintenance] Lock signet and google-api-client version (thanks to @hiroyuki-sato)
- [maintenance] Release a new gem not to include symlinks to make it work on Windows.
Cleanup auth_method
:
- [enhancement] Support
auth_method: authorized_user
(OAuth) - [incompatibility change] Rename
auth_method: json_key
toauth_method: service_account
(json_key
is kept for backward compatibility) - [incompatibility change] Remove deprecated
auth_method: private_key
(p12 key) - [incompatibility change] Change the default
auth_method
toapplication_default
fromprivate_key
becauseprivate_key
was dropped.
- [incompatibility change] Drop deprecated
time_partitioning
.require_partition_filter
- [incompatibility change] Drop
prevent_duplicate_insert
which has no use-case now - [incompatibility change] Modes
replace
,replace_backup
,append
, anddelete_in_advance
requireauto_create_table: true
now because, previously, these modes had created a target table even withauto_create_table: false
and made users being confused. Note thatauto_create_table: true
is always required even for a partition (a table name with a partition decorator) which may not require creating a table. This is for simplicity of logics and implementations. - [incompatibility change] Change default value of
auto_create_table
totrue
because the above 4 modes, that is, exceptappend_direct
always requireauto_create_table: true
now.
- [enhancement] Support field partitioning correctly.
- [enhancement] Support clustered table as an experimental feature
- [maintenance] Fix
time_partitioning.requirePartitionFilter
was not working. Usetime_partitioning.require_partition_filter
(thanks to @gitetsu)
- [maintenance] Fix to use
response.status.error_result
instead ofresponse.status.errors
to check job failure status (thanks to @nownabe)
- [enhancement] Support column-based partition (thanks to Chi-Ruei Li)
- [enhancement] Enable object lifecycle management when creating buckets with
auto_create_gcs_bucket
(thanks to @potato2003)
- [enhancement] Support location option for
auto_create_gcs_bucket
option (thanks to @potato2003)
- [enhancement] Support location option to allow to use 'asia-northeast1' region
- [enhancement] Support auth_method 'application_default'
- [maintenance] Fix deprecated warning log condition for
timeout_sec
- [maintenance] Support google-api-ruby-client >= v0.11.0
- [maintenance] Add
send_timeout_sec
andread_timeout_sec
option for google-api-ruby-client >= v0.11.0
- [maintenance] Fix
schma_update_options
was not set with load_from_gcs (thanks to h10a-bf)
- [maintenance] Fix
schema_update_options
was not working (nil error)
- [enhancement] Support
schema_update_options
option
- [enhancement] Support partitioned table
- [maintenance] Add
progress_log_interval
option to control the interval of showing progress log, and now showing progress log is off by default
- [maintenance] Fix Thread.new to use thread local variables to avoid nil idx error (thanks to @shyouhei and @umisora)
- [maintenance] if
is_skip_job_result_check
is true, skip output_rows checking (thanks to @joker1007)
- [enhancement] retry backendError and internalError in waiting load job
- [enhancement] retry Broken pipe and Connection reset in inserting object to GCS
- [new feature] Add
gcs_bucket
option to load multiple files from a GCS bucket with one load job
- [maintenance] Fix
private_key
auth is not working
- [new feature] Add
abort_on_error
option - [maintenance] Use uuid instead of current time for temp_table name
- [new feature] Add
sdk_log_level
option to show log of google-api-client - [maintenance] Fix
prevent_duplicate_insert
was not working correctly - [maintenance] Change to get
num_output_rows
oftransaction_report
fromget_table
API - [maintenance] Log response.statistics of load jobs
- [maintenance] Always create job_id on client side as google recommends so that duplication not to be occurred
- [maintenance] Fix a possibility which rehearsal would load 0 rows file
Big change is introduced. Now, embulk-output-bigquery is written in JRuby.
- [new feature] Support parallel loads. Fix #28.
- [new feature] Create table first. Fix #29.
- [new feature] Introduce rehearsal mode. Fix #30.
- [new feature] Support
dataset_old
option forreplace_backup
. Fix #31. - [maintenance] Fix default timestamp format to
%Y-%m-%d %H:%M:%S.%6
. Fix #32. - [new feature] Support request options such as
timeout_sec
,open_timeout_sec
,retries
. Fix #33. - [new feature] Support continuing from file generation with
skip_file_generation
option. - [new feature] Guess BigQuery schema from Embulk schema. Fix #1.
- [new feature] Support automatically create dataset.
- [new feature] Support transactional append mode.
- [incompatibility change] Formatter plugin support is dropped. Formatter is done in this plugin for specified
source_format
. - [incompatibility change] Encoder plugin support is dropped. Encoding is done in this plugin for specified
compression
. - [incompatibility change]
append
mode now expresses a transactional append, andappend_direct
is one which is not transactional (this wasappend
mode before)
- [maintenance] Fix detect logic of delete_in_advance mode. #26. @sonots thanks!
- [new feature] Added template_table option. #25. @joker1007 thanks!
- [maintenance] Upgraded Embulk version to 0.8.1 #22. @joker1007 thanks!
- [maintenance] Formatted code style by checkstyle #23
- [new feature] Added mode parameters and support 4 modes(append, replace, replace_backup, delete_in_advance). #20 #21 @joker1007 thanks!
- [maintenance] Change error result display for easy investigation. #18
- [new feature] Added new auth method - json_keyfile of GCP(Google Cloud Platform)'s service account #17
- [maintenance] Upgraded Embulk version to 0.7.1
- [new feature] Supported mapreduce-executor. @frsyuki thanks! #13
- [maintenance] Fixed job_id generation logic #15
- [maintenance] Refactored #11
- [new feature] Added allow_quoted_newlines option #10
- [maintenance] Upgraded embulk version to 0.6.8
- [new feature] Added ignore_unknown_values option to job_id generation logic. #9
- [new feature] Added ignore_unknown_values option. #8 @takus thanks!
- [new feature] Added prevent_duplicate_insert option
- [new feature] Added new auth method - pre-defined access token of GCE(Google Compute Engine)
- [maintenance] Updated Google provided libraries
- http-client:google-http-client-jackson2 from 1.19.0 to 1.20.0
- apis:google-api-services-bigquery from v2-rev193-1.19.1 to v2-rev205-1.20.0
- [new feature] Changed bulk-load method from "via GCS" to direct-insert
- [new feature] added dynamic table creationg option