PHP ClickHouse wrapper - Changelog
======================
- Change exceptionCode in Clickhouse version 22.8.3.13 (official build) #180
- Fix Docker for tests, Change the correct Docker image name #177
- Some type fix
- Fix types: max_execution_time & setConnectTimeOut, undo: Support floats in timeout and connect_timeout #173
- add mbstring to composer require #183
- fixed progressFunction #182
- Add allow_plugins setting since Composer 2.2.x #178
- Fix ping() for windows users
- ping(true) throw TransportException if can`t connect/ping
- Fix: prevent enable_http_compression parameter from being overridden #164
- For correct work with utf-8 . I am working on server with PHP 5.6.40 Update CurlerRequest.php #158
- Add curl setStdErrOut, for custom StdOutErr.
- Fix some test for check exceptions
- Fixed issue with non-empty raw data processing during init() on every fetchRow() and fetchOne() call - PR #161
- Add support php 7.3 & php 8
- Add two new types of authentication #139
- Fixed typo in streamRead exception text #140
- fix the exception(multi-statement not allow) when sql end with ';' #138
- Added more debug info for empty response with error #135
- #134 Enhancement: Add a new exception to be able to distinguish that ClickHouse is not available.
- #131 Fix: async loop breaks after 20 seconds
- #129 Add client certificate support to able to work with Yandex ClickHouse cloud hosting
- Delete
dropOldPartitions
- Fix error : The error of array saving #127
- More test
- #125 WriteToFile: support for JSONEachRow format
- #122 Add function fetchRow()
- Use X-ClickHouse-User by headers
- Add setDirtyCurler() in HTTP
- Add more tests
- Reupload 1.3.4
- #118 Fix Error in Conditions & more ConditionsTest
- Fix phpStan warnings in getConnectTimeOut() & max_execution_time()
- fix clickhouse release 19.5.2.6 error parsing #117
- chore(Travis CI): Enable PHP 7.3 testing #116
- fix: add CSVWithNames to supported formats #107
- Upgraded Expression proposal #106 -> UUIDStringToNum
- Correct query format parsing #108
- Can not use numbers() function in read requests #110
- #109 Do not use keep-alive or reuse them across requests
- Pull request #94 from simPod: Uint64 values
- Pull request #95 from simPod: Bump to php 7.1
- Fix #91 ,Does not work inserting with the database name in the table
- pull request #90 from simPod: Refactor partitions()
- Escape values in arrays, pull request #87 from simPod/fix-escape
- fix-bindings: pull request #84 from simPod/fix-bindings
- Added quotes arount table and column names in the insert wrapper.
- Docker Compose in tests
- Connection without port
- New
$client->getServerVersion()
- Rewrite method
$client->ping()
- Fix
include.php
- ClickHouseException before exceptions - Add CHANGELOG.md
- New
interface ClickHouseException
- Fix
SelectAsync() & executeAsync()
, some task freeze
- Republic 1.1.1
- #47 Bindings wrong work - fix
New:
$client->getServerUptime()
Returns the server's uptime in seconds.$client->getServerSystemSettings()
Read system.settings table and return array$client->streamWrite()
function$client->streamRead()
function
Warning:
- Now default enable
HttpCompression
set true - Deprecated
StreamInsert
class
Fix:
- Fix
rawData()
result inJSONCompact & JSONEachRow
format - Fix Statement - unnecessary memory usage
- Fix support php5.6
- Do not convert int parameters in array to string in Bindings pull 67
- Use Semantic versioning
- Fix
tableSize('name')
andtablesSize()
- Add DataTime Interface for Bind
- Fix phpDoc
Composer->require->"php": ">=5.6"
- Move
\ClickHouseDB\WhereInFile
to\ClickHouseDB\Query\WhereInFile
- Move
\ClickHouseDB\QueryException
to\ClickHouseDB\Exception\QueryException
- Move
\ClickHouseDB\DatabaseException
toClickHouseDB\Exception\DatabaseException
- Move
\ClickHouseDB\FormatLine
to\ClickHouseDB\Quote\FormatLine
- Move
\ClickHouseDB\WriteToFile
toClickHouseDB\Query\WriteToFile
- Move
\Curler\Request
to\ClickHouseDB\Transport\CurlerRequest
- Move
\Curler\CurlerRolling
to\ClickHouseDB\Transport\CurlerRolling
- Up to php 7.2 & phpunit 7.1 for Dev & Prs4 Autoloading
- Fix StreamInsert : one stream work faster and safe than loop #PR43
- Fix cluster->clientLike()
- Fix
FORMAT JSON
if set FORMAT in sql - GetRaw() - result raw response if not json
SELECT number as format_id FROM system.numbers LIMIT 3 FORMAT CSVWithNames
- progressFunction()
- Escape values
- Not set
FORMAT JSON
if set FORMAT in sql
- Add insertAssocBulk
- Fix tablesSize(), use database filter
- Fix partitions(), use database filter
- Add session_id support
- Build composer 0.17.02
- for ReadOnly users need set :
client->setReadOnlyUser(true);
or$confi['readonly']
, see exam19_readonly_user.php
client->truncateTable('tableName')
cluster->getMasterNodeForTable('dbName.tableName') // node have is_leader=1
cluster->getSizeTable('dbName.tableName')
cluster->getTables()
cluster->truncateTable('dbName.tableName')
- See example cluster_06_truncate_table.php
- add
cluster->setSoftCheck()
- insertBatchFiles() support
$file_names
- string or array ,$columns_array
- array or null - add insertBatchStream() return
\Curler\Request
no exec - writeStreamData() return
\Curler\Request
- fix httpCompression(false)
- getHeaders() as array from
\Curler\Request
setReadFunction( function() )
inRequest
- Add class StreamInsert, direct read from stream_resource to clickhouse:stream
- add
$db->insertBatchTSVFiles()
, - add format param in
$db->insertBatchFiles(,,,format)
, - deprecated class CSV
- Add static class
\ClickHouseDB\FormatLine:CSV(),\ClickHouseDB\FormatLine:TSV(),\ClickHouseDB\FormatLine:Insert()
- CSV RFC4180 -
\ClickHouseDB\FormatLine::CSV(Array))."\n"
- Update exam12_array.php + unit tests
$db->enableLogQueries(true)
- write to system.query_log$db->enableExtremes(true);
- default extremes now, disabled$db->isExists($database,$table)
- add Connect timeout , $db->setConnectTimeOut(5);
- change default ConnectTimeOut = 5 seconds. before 1 sec.
- change DNS_CACHE default to 120 seconds
- fix timeout error and add test
- client->setTimeout($seconds)
- cluster->clientLike($cluster,$ip_addr_like)
- Delete all migration code from driver, move to https://github.com/smi2/phpMigrationsClickhouse
- Version/Release names: [ zero dot year dot month]
- Support cluster: new class Cluster and ClusterQuery
- output_format_write_statistics, for clickhouse version > v1.1.54019-stable
- WriteToFile in select,selectAsync
- Degeneration for Bindings & Conditions
- $db->select(new Query("Select..."));
- remove findActiveHostAndCheckCluster , clusterHosts , checkServerReplicas
- Add cleanQueryDegeneration(),addQueryDegeneration()
- Need $db->enableQueryConditions(); for use Conditions ; default Conditions - disabled;
- float in CurlerRequest->timeOut(2.5) = 2500 ms
- tablesSize() - add
sizebytes
- exception on error write
- init