Skip to content

Releases: FIWARE/context.Orion-LD

Alpha-5

01 Oct 14:23
Compare
Choose a tag to compare
  • Issue #280 Better error handling for geo location
  • Issue #280 Version Info printed to stdout (and log-file) at startup
  • Issue #280 Fixed the "1001 bug" - a delayed free problem solved by making kjClone() not use always malloc, with an option to use KAlloc
  • Issue #280 Avoiding duplicates of entities in Batch Upsert
  • Issue #280 All env vars are now prefixed ORIONLD_
  • Issue #280 Crash when patching observedAt as sub-attribute
  • Issue #280 Subscriptions when deleted were not removed from the subscription cache - now they are
  • Issue #482 Fixed "Part C" - Notifications of big size attributes are cut off at 2049 Byte total message length
  • Issue #482 Fixed "Part B" - Size constraints on entity size for GET /entities/{entity-id}
  • Issue #480 Erroneous contexts are saved in the context cache
  • Issue #482 Error following the 482 fix, too small buffer of delayed free references - upped to 1001 slots
  • Issue #280 Crash in startup if a huge amount of GeoProperties in the database
  • Issue #280 @id and @type can now be used instead of id and type
  • Issue #280 milliseconds for ALL timestamps, including throttling, notifiedAt, observation and management intervals, etc, etc
  • Issue #280 Implemented createdAt and modifiedAt + options=sysAttrs for subscriptions (with milliseconds, of course)
  • Issue #280 createdAt and modifiedAt for registrations were returned as integers - now as ISO8601 strings (with milliseconds)
  • Issue #280 Returning 501 Not Implemented if timeInterval is used for subscriptions
  • Issue #430 Accepting "?options=count" as well as "?count=true" in NGSI-LD queries, for backwards compatibility
  • Issue #507 Core context instead of the one in the Link header used in Batch Update
  • Issue #280 User defined HTTP headers for notifications (part of NGSI-LD 1.3.1)
  • Issue #520 Fixed bug in POST /entities with datasetId
  • Issue #521 Implemented datasetId for POST entities/*/attrs
  • Issue #525 Error handling in responses to forwarded GET /entities/{entityId} (the broker used to crash)
  • Issue #529 Subscriptions stop working after restarting the broker
  • Issue #532 Return error if unknown URI parameter is used
  • Issue #527 Bug in update of relationships with datasetId
  • Issue #280 Fixed Release Mode compilation errors in Ubuntu 20.04
  • Issue #280 Removed the feature of expanding attribute values as it doesn't fit with JSON-LD

Docker: docker pull fiware/orion-ld:alpha-0.5.0

Alpha-4

18 May 18:02
Compare
Choose a tag to compare

Find the docker image for fiware/orion-ld:alpha-0.4.0 on dockerhub

  • Issue #280 MQTT Notifications - not 100% - ETSI NGSI-LD spec is still being updated on MQTT notifications, but what's there is working
  • Issue #409 Removed an incorrect warning about options=keyValues not supported
  • Issue #280 'location' is not to be expanded - fixed for PATCH ops that was expanding 'location'
  • Issue #280 Implemented POST /ngsi-ld/v1/entityOperations/create (BATCH Create)
  • Issue #280 Added the option to use username:password for MQTT subscriptions (only 'QoS' and 'version' missing now for MQTT notifications)
  • Issue #419 Implemented GET /ngsi-ld/v1/types - also not yet in the spec, so this may change slightly in the near future
  • Issue #280 Fixed a bug that impeded the creation of registrations with only entity-type in the entities array
  • Issue #280 Entities can now have more than one GeoProperty
  • Issue #280 Turned off initial notifications (when creating NGSI-LD subscriptions)
  • Issue #280 New version for the 'count' URI parameter - in NGSI-LD 'options' isn't used for 'count'
  • Issue #280 Implemented POST /ngsi-ld/v1/entityOperations/update (BATCH Update)
  • Issue #280 Fixed bug in context cache that didn't save some contexts in the cache and made them being downloaded each and every time
  • Issue #280 New DB layer for GET /entities/{EID} - mongoBackend no longer used
  • Issue #280 datasetId partly supported for creation of entities
  • Issue #280 datasetId partly supported for retrieval of entities
  • Issue #451 When retrieving an entity, if attrs URI param 'attrs' is given and the entity doesn't have any of those attributes, a 404 is returned
  • Issue #280 Two new NGSI-LD error codes: NoMultiTenantSupport and NonExistingTenant
  • Issue #280 Error when non-existing tenant is used (except for creation)
  • Issue #457 creDate can now be either a float, an int or a long in some functions (e.g. batch upsert)
  • Issue #280 Implemented the POST Query request - POST /ngsi-ld/v1/entityOperations/query

Alpha-2

06 Mar 23:01
Compare
Choose a tag to compare

New alpha release, Alpha-2, replacing Alpha-1.

Improvements from Alpha-1:

  • Issue #310 - Arrays of one element are reduced to a single item, unless the @context states otherwise
  • Issue #307 - Check validity of property-of-property
  • Issue #XXX - NGSI-LD style forwarding of GET /ngsi-ld/v1/entities/{EID}
  • Issue #XXX - Registrations with empty arrays inside information are now rejected, as per spec.
  • Issue #342 - Empty arrays for properties when creating entities crashes the broker
  • Issue #329 - Incorrect storage of Subscription Q-filter when more than one part-filter (;-separated)
  • Issue #340 - If ?options=count, then an HTTP header (Fiware-Total-Count) is added to the response
  • Issue #XXX - Crash in GET /csourceRegistrations if the @context of a registration isn't found
  • Issue #XXX - Fixed a bug in Patch Attribute forwarding - Content-Type was always application/json
  • Issue #XXX - Implemented the service "DELETE /ngsi-ld/v1/csourceRegistrations/{registrationId}
  • Issue #XXX - Complete reimplementation of POST /ngsi-ld/v1/entities/{EID}/attrs
  • Issue #364 - Attribute value compaction now done when 'keyValues' option is set - now it is!
  • Issue #XXX - Implemented PATCH /ngsi-ld/v1/subscriptions/{subscriptionId}
  • Issue #370 - Compaction of attribute names and entity types in GET /ngsi-ld/v1/csourceRegistrations
  • Issue #371 - Forwarded GET now respects options=keyValues
  • Issue #XXX - Reimplemented PATCH /entities/{EID}/attrs
  • Issue #XXX - Implemented PATCH /subscriptions/{reg-id}
  • Issue #368 - Implemented PATCH /csourceRegistrations/{reg-id}
  • Issue #387 - allowing @context inside the array items of the payload data for BATCH Upsert
  • Issue #393 - Fixed a mixup in contexts when validating entity type in batch upsert operation
  • Issue #392 - LineString Geo type was not supported

Bugfix 1 for Alpha-1

21 Jan 09:30
464374d
Compare
Choose a tag to compare

Just one bugfix in Alpha-1:

  • #314 - crash in patch entity attrs when relationship without object

Alpha Release 1

17 Jan 09:41
095b691
Compare
Choose a tag to compare

Alpha Release 1 of Orion-LD

The first alpha release of Orion-LD has been released, as of January 17 2020.

This release should probably not be used for production, as it is still not tested enough.
The current test and stress suites do not show any signs of instability of Orion-LD though.
However, there will be bugs, some already identified.
Around 70% of the API is implemented and definitely the most essential part of the API.
Our commitment is that all bug reports will be looked into the same day that they are created.

All this makes this release perfectly apt for starting new projects with NGSI-LD using Orion-LD.

Implemented Services

  • POST /ngsi-ld/v1/entities
  • GET /ngsi-ld/v1/entities
  • GET /ngsi-ld/v1/entities/{entityId}
  • DELETE /ngsi-ld/v1/entities/{entityId}
  • POST /ngsi-ld/v1/entities/{entityId}/attrs
  • PATCH /ngsi-ld/v1/entities/{entityId}/attrs
  • PATCH /ngsi-ld/v1/entities/{entityId}/attrs/{attrName}
  • DELETE /ngsi-ld/v1/entities/{entityId}/attrs/{attrName}
  • POST /ngsi-ld/v1/entityOperations/upsert
  • POST /ngsi-ld/v1/entityOperations/delete
  • POST /ngsi-ld/v1/subscriptions
  • GET /ngsi-ld/v1/subscriptions
  • GET /ngsi-ld/v1/subscriptions/{subscriptionId}
  • DELETE /ngsi-ld/v1/subscriptions/{subscriptionId}
  • POST /ngsi-ld/v1/csourceRegistrations
  • GET /ngsi-ld/v1/csourceRegistrations
  • GET /ngsi-ld/v1/csourceRegistrations/{registrationId}

Plus a few extra services that are not part of the NGSi-LD API

  • GET /ngsi-ld/ex/v1/version
  • GET /ngsi-ld/ex/v1/contexts
  • GET /ngsi-ld/ex/v1/contexts/{contextId}

Implemented Concepts

  • @context
    • expansion of entity type and attribute names
    • compaction of entity type and attribute names
    • expansion of attribute value, if applicable (@type == @vocab)
    • compaction of attribute value, if applicable (@type == @vocab)
    • prefix expansion
  • NGSi-LD Q-filter for entity queries

Not Implemented Services

Services that will not be implemented in Orion-LD, as they are covered by other FIWARE GEs:

  • POST /ngsi-ld/v1/temporal/entities
  • POST /ngsi-ld/v1/temporal/entities/{entityId}
  • GET /ngsi-ld/v1/temporal/entities
  • GET /ngsi-ld/v1/temporal/entities/{entityId}

Right now the idea is to not implement these services in Orion-LD, even though they are a part of the NGSi-LD API.
The reason for this decision is that another FIWARE GE - Cygnus - covers historical values in FIWARE.
However, this decision may change in the future - to have a fully implemented API.

Delayed for Alpha 2

Services that are planned to be implemented for the Alpha 2 in June 2020:

  • POST /ngsi-ld/v1/entityOperations/create
  • POST /ngsi-ld/v1/entityOperations/update
  • PATCH /ngsi-ld/v1/subscriptions/{subscriptionId}
  • PATCH /ngsi-ld/v1/csourceRegistrations/{registrationId}
  • DELETE /ngsi-ld/v1/cSourceRegistrations/{reg-id}
  • GET /ngsi-ld/v1/types

Delayed for Release 1.0.0

Services that are planned to be implemented for the release 1.0.0 in December 2020:

  • POST /ngsi-ld/v1/cSourceSubscriptions
  • PATCH /ngsi-ld/v1/cSourceSubscriptions/{csub-id}
  • GET /ngsi-ld/v1/cSourceSubscriptions
  • GET /ngsi-ld/v1/cSourceSubscriptions/{csub-id}
  • DELETE /ngsi-ld/v1/cSourceSubscriptions/{csub-id}

Not Implemented Concepts

There are still a few concepts that aren't implemented in the Alpha 1 release:

  • contexts aren't persisted in database, meaning that contexts created by the broker are lost when the broker exits
  • NGSi-LD Q-filter for subscriptions - old NGSIv2 Q-filter is used
  • datasetId
  • Forwarding to Context Providers (it's not even defined in the NGSI-LD spec)
    • Some of the services support NGSIv1 forwarding
  • Federation
  • Error for null values in some of the services
  • geoqueries with attributes not named 'location'
  • Attribute Domains

Known bugs

  • PATCH /ngsi-ld/v1/entities/{entityId}/attrs does merge inside already existing attributes instead of REPLACE.
  • POST /ngsi-ld/v1/entities/{entityId}/attrs may give extra notifications due to the way it is implemented

The FIWARE NGSI-LD Test Suite reports a total of 6 failures, out of 160 test cases.
There are only two known bugs right now, but only for lack in time.
There are more bugs in this alpha release, believe me.

Beta 4

06 Jun 10:38
Compare
Choose a tag to compare

This is the Beta 4 release of Orion-LD, an NGSI-LD context broker.

Quick update of the latest beta release, as the inclusion of a connection pool for postgres/timescale made such an impact on the performance.

Issue #857 Bug fix: Relationship without 'object' field in notifications
Issue #280 Connection Pool for TRoE, making the broker running with TRoE only about 20% slower than without
Issue #280 General performance improvements

Get it on dockerhub