You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

The Geneva Release is the 6th successful community release of EdgeX Foundry.   It is a minor (dot) release (version 1.2) and therefore backward compatible with the Edinburgh (v1.0) and Fuji (1.1) releases.  Although a minor release, a number of new and significant features and improvements are unveiled with the release to include automatic device provisioning, a new rules engine implementation, and batch and forward functionality to name a few.

Release Information

  • Dynamic / automatic device provisioning/on-boarding
  • Alternate messaging support (RedisStreams, MQTT, 0MQ, …)
  • Better type info in sensor data collection
  • REST device service
  • Batch and send
  • Use of secrets for authenticated MQTT/HTTP exports
  • Sensor collection of an array of types
  • Redis as the default DB
  • New rules engine (Kuiper vs Drools – written in Go; smaller / faster)
  • Improved Security
  • Interoperability testing
  • DevOps Jenkins Pipelines

Adopter Warnings

  • The EdgeX community has deprecated three features in this release of EdgeX. Deprecation does not mean the feature is removed from this release, but it is a strong indication that the feature will be removed in an upcoming release.
    • MongoDB support has been deprecated. With the Fuji release, the community decided to make Redis our default database.  We now have intentions of removing MongoDB from EdgeX in the near future.  All code associated to storing/retrieving EdgeX data in Mongo has been labeled as deprecated.  Docker Compose files for MongoDB include a warning to let you know support for MongoDB is coming to an end.  Redis has been selected over MongoDB by the community for ARM support, memory/footprint improvements, license considerations and because of the involvement of the Redis Labs in the project.
    • The Support Logging service has been deprecated. The community felt that there are better log aggregation services available in the open source community or by deployment/orchestration tools.  In this release, the logging service is not started with the EdgeX provided Docker Compose files (it is still in the file but commented out).  By default, all services now log to standard out.  If users wish to still use the central logging service, they must configure each service to use it.  Users can still alternately choose to have the services log to a file.
    • The Support Rules Engine (which wrapped the Java-based Drools rules engine) has also been deprecated. EdgeX is partnering with the Kuiper project to provide new and proved rules engine support.

Known Bugs

  • Sensor readings are captured event/reading objects by device services. The event/reading objects are used throughout EdgeX to transport the sensor data.  An event can have multiple readings associated.  For example, in a single sensing, a thermostat may create an event with two readings: one for temperature and one for humidity.  There are currently no restrictions on the number of readings on an event.  In theory, an event can be packed with so many readings that it creates a object that is MBs in size or even larger.  This can cause the system, particularly core data, start to slow down or even fail.  In a future release, appropriate governors will be put in place to prevent event/reading objects from getting too big.  For now, users are advised to monitor the size of their event/reading objects and break them apart if there are too many or too big of readings associated to an event.  Ref #2527.

Geneva Release Overview

Release Dates and Timeline

Code Freeze:  Apr 22, 2020

Release:  May 13, 2020

  • No labels