Release date: October 3rd, 2017Download
- We now use HTTPS to connect to Microsoft Azure Blob Storage. We added a custom setting (com.mendix.storage.azure.UseHttps) to be able to disable secure connections to Azure. (Ticket 55726)
- We improved the memory management of persistent entities that have been committed to the persistent storage.
Entity paths for custom widgets in offline apps are now allowed! This means you can use custom widgets that have an entity property in your offline pages.
- You can now use the arrow keys and Enter to select the mapping elements in import and export mappings.
- We introduced HttpRequest as a standard system entity type. The HttpResponse is affected by this, as both entities now inherit from HttpMessage.
Data Storage Improvements
- Added correlation UUID for the XPath, OQL, ID, AutoNumber and SQL queries when the
ConnectionBus_Retrievelog node is set to Debug or Trace level. It helps to analyze performance related problems of the generated OQL and SQL queries. SQL queries are now also logged at Debug level (previously only at Trace level).
DataStorage_QueryPlanlog node to the Console, where Debug log level enables logging of the digested query plans, and Trace log level provides detailed execution plans of the SQL queries. Both digested and detailed query plans are logged with correlation UUID, which helps to backtrack the query plans to their XPath, OQL, ID, AutoNumber and SQL queries. This feature is only supported for PostgreSQL database at the moment.
- We fixed an issue where pressing Cancel caused a crash on a page that contained a new object and a reference set selector. (Ticket 56094)
- We fixed the following data retrieval issues when concerning virtual attributes: (Ticket 56016)
- Template grids containing an entity with a virtual attribute and another attribute inaccessible to the current user triggered a runtime exception.
- Template grids containing an entity with a virtual attribute did not show any data over an association (for example, nested data views).
- Custom widgets requesting Mendix objects with a virtual attribute through XPath received objects without their associations.
- We fixed the issue where a list view could not retrieve any data in applications using a SQL Server or an Oracle database. (Ticket 54775)
- We fixed an issue where the retrieve action using an association did not return the correct value because the related objects were not sent to the server. (Ticket 55266)
- We improved the error message that is logged when the change hash for a certain change is not sent from the client to the server. It now includes the entity and member name to which the change belongs, which makes it easier to find out which change caused the error. (Ticket 55679)
- We fixed the result of an import action where the root of the import mapping is an
(inheritance)element. This no longer gives an empty result.
- We fixed an issue where an OData endpoint threw an error when either the username or password was empty.
- We fixed and issue where the export-with-mapping action had an unfixable consistency error after changing the export mapping being used from a mapping with a parameter to a mapping without one.
- We fixed an issue where a variable if overwritten with the return value of a sub-microflow where the setting Use Return Variable is false. (Ticket 47290, 53641, 55790)
- We fixed the Ooops exception pop-up window that appears when copying or looking for usages of list operation actions. (Tickets 54886, 54610, 54782)
- We fixed the bug that resulted in errors in XPath expressions sometimes not being found. The errors have nowhere to hide now. (Ticket 50861)
- When a text widget has a placeholder for an enumeration attribute, the name of the enumeration is displayed instead of the caption. (Ticket 58848)
- Fixed in 7.9.0.
- In some situations, an object associated to another object cannot be committed during the execution of a before/after commit event, resulting in an error such as “Object of type ‘MyModule.MyEntity’ with guid ‘12345’ cannot be updated, as it does not exist anymore.” For example, consider two new objects
A(parent) is associated with
Ahas a before- or after-commit event. In this event,
Bwill be changed and committed. If you then commit
Bwill be marked as ‘autocommitting’. Because of this, committing
Bin the before- or after-commit event of
Awill fail, as it expects
Ato already exist in the database, which is not yet the case. (Tickets 59099, 59288)
- Workaround 1 – don’t commit (a child) in a before-commit event, as the child will already be autocommitted by Mendix.
- Workaround 2 – commit the child object before committing the parent object.