diff --git a/README.md b/README.md index 80ceeab..cd11353 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Main features are: Unsupported: -- Server timezones other than UTC. +- `DateTime64` Resources: diff --git a/ch/chproto/server_info.go b/ch/chproto/server_info.go index c81af49..08fdb88 100644 --- a/ch/chproto/server_info.go +++ b/ch/chproto/server_info.go @@ -1,9 +1,5 @@ package chproto -import ( - "fmt" -) - type ServerInfo struct { Name string MinorVersion uint64 @@ -25,18 +21,13 @@ func (srv *ServerInfo) ReadFrom(rd *Reader) (err error) { return err } - timezone, err := rd.String() - if err != nil { + if _, err := rd.String(); err != nil { // timezone return err } - if timezone != "UTC" { - return fmt.Errorf("ch: ClickHouse server uses timezone=%q, expected UTC", timezone) - } - - if _, err = rd.String(); err != nil { // display name + if _, err := rd.String(); err != nil { // display name return err } - if _, err = rd.Uvarint(); err != nil { // server version patch + if _, err := rd.Uvarint(); err != nil { // server version patch return err } diff --git a/ch/chschema/append.go b/ch/chschema/append.go index 1c31247..4b31849 100644 --- a/ch/chschema/append.go +++ b/ch/chschema/append.go @@ -106,7 +106,10 @@ func AppendString(b []byte, s string) []byte { } func AppendTime(b []byte, tm time.Time) []byte { - return tm.UTC().AppendFormat(b, "'2006-01-02 15:04:05'") + b = append(b, "toDateTime('"...) + b = tm.UTC().AppendFormat(b, "2006-01-02 15:04:05") + b = append(b, "', 'UTC')"...) + return b } func AppendBytes(b []byte, bytes []byte) []byte {