Skip to content

Hazelcast Node.js Client 5.0.0

Compare
Choose a tag to compare
@srknzl srknzl released this 01 Oct 09:21
· 146 commits to master since this release

This document includes the new features, enhancements, and fixed issues for the Hazelcast Node.js Client 5.0.0 release.

Breaking Changes

  • Client.getSqlService() renamed to Client.getSql() #963
  • Year field in LocalDate, LocalDateTime and OffsetDateTime classes is now sent as an integer. This means you should use the 5.0 version of the client with a 5.0 server for SQL compatibility with these types, as the SQL service became stable in 5.0 versions of the client and the server. #963
  • SqlService.execute now returns a promise. When the returned promise resolves to the SqlResult, the SqlResult will receive the first response. Therefore, some API of the SqlResult changed because these APIs do not need to wait for execution response anymore. #1046

New Features

  • Added distinct aggregator support #1007
  • Portable support for DECIMAL, DATE, TIME, TIMESTAMP, TIMESTAMP WITH TIMEZONE #967
  • BigInt serialization support #975
  • New SQL classes for SQL types: LocalDate, LocalTime, LocalDateTime, OffsetDateTime and BigDecimal. Previously you were using explicit CASTs and strings, now you can use them directly without an explicit CAST. #963

Enhancements

  • SQL service is now stabilized. The 5.0 client is fully compatible with the 5.0 version of the server in terms of SQL. #963
  • SQL rows are deserialized lazily allowing partial deserialization. #1056
  • HazelcastSqlException now has a suggestion field that you can use when your query fails. The field includes a remediation query that you can run to fix the exception. #1055
  • Client.shutdown() will return the same promise on multiple calls. #1003
  • Document and Validate client properties #1001
  • Fail fast on configuration error #959
  • Fail fast on wrong failover config key #977
  • Documentation and API doc improvements and new code samples #1062 #1060 #1057 #1042 #1000 #993 #974 #973 #966 #956

Fixes

  • Throw an error in the absence of a deserializer #957

Known Issues

  • getDistributedObjects results in error if the send distributed objects is not known by the Node.js client. There is an ongoing discussion about how to fix this. #982