"Will be used by Teiid server" is an default option for any extension property. if TRUE, then a property value is added to the indexed metadata for that object and ends up in the VDB. My understanding of the server is that these extension properties are then served up (made available) generically to any "translator" that wishes to find their particular extension properties and use them if it chooses.
Not sure whether or not there is a way to view them (if they exist) for a deployed VDB
If you applied the extension properties on Source Model, and then supplied the values for those properties, they will be available in the translator's RuntimeMetadata class to make any further query planning decisions.
If you applied on the View model, then they are specific to Teiid Query Engine, or Custom Metadata that user likes to decorate their models with. If the property is defined by the core team then it will be used for some kind of query planning, when used as Custom Metadata, user has additional plans reading this metadata from ModeShape like repository to further drive their architecture, however they see fit, but they will not be used by core Teiid engine.
So they are not available at run-time except programmaticly?
I was looking for a stored procedure or something to 'find'/discover them somehow..
I.E. GetMedProperty(<propertyName>) would return all objects having the a Med property called propertyName
or havingMedPropertyValue(<PropertyValue>) would return all objects having a propertyvalue eq to the PropertyValue given...
Just some ideas..
There is a SYS.PROPERTIES table System Tables - Teiid 8.8 (draft) - Project Documentation Editor, but it is currently for all object types - tables, columns, etc. So you have to somewhat know what you are looking for.
The Sys.Properties seems to be providing what i am looking for right now.. Thanks!
Given the trending 'dynamic' nature of vdbs... is it possible to call setProperties for a particular "name" ?
> is it possible to call setProperties for a particular "name" ?
You mean SYSADMIN.setProperty? You have to perform the set by the uid, which means you will like need to do a scalar subquery (select uid from tables where SchemaName='x' and Name='y') to get the uid.
To allow extension properties to be altered at runtime.