2.6. Kodo JDO Properties

2.6.1. kodo.AggregateListeners
2.6.2. kodo.ClassResolver
2.6.3. kodo.ConnectionProperties
2.6.4. kodo.ConnectionFactoryProperties
2.6.5. kodo.Connection2DriverName
2.6.6. kodo.Connection2Password
2.6.7. kodo.Connection2URL
2.6.8. kodo.Connection2UserName
2.6.9. kodo.Connection2Properties
2.6.10. kodo.ConnectionFactory2Properties
2.6.11. kodo.ConnectionRetainMode
2.6.12. kodo.CopyObjectIds
2.6.13. kodo.DataCache
2.6.14. kodo.DataCacheTimeout
2.6.15. kodo.EagerFetchMode
2.6.16. kodo.FetchBatchSize
2.6.17. kodo.FetchGroups
2.6.18. kodo.FilterListeners
2.6.19. kodo.FlushBeforeQueries
2.6.20. kodo.InverseManager
2.6.21. kodo.LicenseKey
2.6.22. kodo.ReadLockLevel
2.6.23. kodo.LockManager
2.6.24. kodo.LockTimeout
2.6.25. kodo.Log
2.6.26. kodo.ManagedRuntime
2.6.27. kodo.ManagementConfiguration
2.6.28. kodo.ObjectLookupMode
2.6.29. kodo.OrphanedKeyAction
2.6.30. kodo.PersistenceManagerImpl
2.6.31. kodo.PersistenceManagerServer
2.6.32. kodo.PersistentClasses
2.6.33. kodo.ProxyManager
2.6.34. kodo.QueryCache
2.6.35. kodo.QueryCompilationCache
2.6.36. kodo.RemoteCommitProvider
2.6.37. kodo.RestoreMutableValues
2.6.38. kodo.RetainValuesInOptimistic
2.6.39. kodo.RetryClassRegistration
2.6.40. kodo.SubclassFetchMode
2.6.41. kodo.TransactionMode
2.6.42. kodo.jdbc.AutoIncrementConstraints
2.6.43. kodo.jdbc.ClassIndicator
2.6.44. kodo.jdbc.ConnectionDecorators
2.6.45. kodo.jdbc.DataSourceMode
2.6.46. kodo.jdbc.DBDictionary
2.6.47. kodo.jdbc.FetchDirection
2.6.48. kodo.jdbc.ForeignKeyConstraints
2.6.49. kodo.jdbc.JDBCListeners
2.6.50. kodo.jdbc.LRSSize
2.6.51. kodo.jdbc.MappingFactory
2.6.52. kodo.jdbc.ResultSetType
2.6.53. kodo.jdbc.SchemaFactory
2.6.54. kodo.jdbc.Schemas
2.6.55. kodo.jdbc.SequenceFactory
2.6.56. kodo.jdbc.SubclassMapping
2.6.57. kodo.jdbc.SynchronizeMappings
2.6.58. kodo.jdbc.TransactionIsolation
2.6.59. kodo.jdbc.UpdateManager
2.6.60. kodo.jdbc.VersionIndicator
2.6.61. kodo.WriteLockLevel

Kodo JDO defines many properties of its own. Most of these properties are provided for advanced users who wish to customize Kodo JDO's behavior; the majority of developers can omit them. A complete alphabetical listing of Kodo JDO-specific properties is given below.

2.6.1. kodo.AggregateListeners

Property name: kodo.AggregateListeners

Configuration API: kodo.conf.JDOConfiguration.getAggregateListeners

Resource adaptor config-property: AggregateListeners

Default:-

Description: A comma-separated list of full plugin strings (see Section 2.4, “Plugin Configuration”) for custom kodo.query.AggregateListeners to make available to all queries, in addition to the standard set of listeners. See Section 10.7, “Query Extensions” for details on aggregates.

2.6.2. kodo.ClassResolver

Property name: kodo.ClassResolver

Configuration API: kodo.conf.JDOConfiguration.getClassResolver

Resource adaptor config-property: ClassResolver

Default: spec

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.util.ClassResolver implementation to use for class name resolution. The default value spec is an alias for the kodo.util.SpecClassResolver. This resolver is compliant with the candidate release of the JDO 1.0.2specification, but you may wish to plug in your own implementations if you have special classloading needs.

2.6.3. kodo.ConnectionProperties

Property name: kodo.ConnectionProperties

Configuration API: kodo.conf.JDOConfiguration.getConnectionProperties

Resource adaptor config-property: ConnectionProperties

Default: -

Description: A plugin string (see Section 2.4, “Plugin Configuration”) listing properties to configure the driver listed in the ConnectionDriverName property described in Section 2.5.2, “javax.jdo.option.ConnectionDriverName”. See Chapter 4, JDBC for details.

2.6.4. kodo.ConnectionFactoryProperties

Property name: kodo.ConnectionFactoryProperties

Configuration API: kodo.conf.JDOConfiguration.getConnectionFactoryProperties

Resource adaptor config-property: ConnectionFactoryProperties

Default: -

Description: A plugin string (see Section 2.4, “Plugin Configuration”) listing properties for configuration of the javax.sql.DataSource in use. See the Chapter 4, JDBC for details.

2.6.5. kodo.Connection2DriverName

Property name: kodo.Connection2DriverName

Configuration API: kodo.conf.JDOConfiguration.getConnection2DriverName

Resource adaptor config-property: Connection2DriverName

Default: -

Description: This property is equivalent to the javax.jdo.option.ConnectionDriverName property described in Section 2.5.2, “javax.jdo.option.ConnectionDriverName”, but relates to the alternate connection factory used for non-XA connections. See Section 13.2, “XA Transactions” on XA Transactions for details.

2.6.6. kodo.Connection2Password

Property name: kodo.Connection2Password

Configuration API: kodo.conf.JDOConfiguration.getConnection2Password

Resource adaptor config-property: Connection2Password

Default: -

Description: This property is equivalent to the javax.jdo.option.ConnectionPassword property described in Section 2.5.5, “javax.jdo.option.ConnectionPassword”, but relates to the alternate connection factory used for non-XA connections. See Section 13.2, “XA Transactions” on XA Transactions for details.

2.6.7. kodo.Connection2URL

Property name: kodo.Connection2URL

Configuration API: kodo.conf.JDOConfiguration.getConnection2URL

Resource adaptor config-property: Connection2URL

Default: -

Description: This property is equivalent to the javax.jdo.option.ConnectionURL property described in Section 2.5.6, “javax.jdo.option.ConnectionURL”, but relates to the alternate connection factory used for non-XA connections. See Section 13.2, “XA Transactions” on XA Transactions for details.

2.6.8. kodo.Connection2UserName

Property name: kodo.Connection2UserName

Configuration API: kodo.conf.JDOConfiguration.getConnection2UserName

Resource adaptor config-property: Connection2UserName

Default: -

Description: This property is equivalent to the javax.jdo.option.ConnectionUserName property described in Section 2.5.7, “javax.jdo.option.ConnectionUserName”, but relates to the alternate connection factory used for non-XA connections. See Section 13.2, “XA Transactions” on XA Transactions for details.

2.6.9. kodo.Connection2Properties

Property name: kodo.Connection2Properties

Configuration API: kodo.conf.JDOConfiguration.getConnection2Properties

Resource adaptor config-property: Connection2Properties

Default: -

Description: This property is equivalent to the kodo.ConnectionProperties property described in Section 2.6.3, “kodo.ConnectionProperties”, but relates to the alternate connection factory used for non-XA connections. See Section 13.2, “XA Transactions” on XA Transactions for details.

2.6.10. kodo.ConnectionFactory2Properties

Property name: kodo.ConnectionFactory2Properties

Configuration API: kodo.conf.JDOConfiguration.getConnectionFactory2Properties

Resource adaptor config-property: ConnectionFactory2Properties

Default: -

Description: This property is equivalent to the kodo.ConnectionFactoryProperties property described in Section 2.6.4, “kodo.ConnectionFactoryProperties”, but relates to the alternate connection factory used for non-XA connections. See Section 13.2, “XA Transactions” on XA Transactions for details.

2.6.11. kodo.ConnectionRetainMode

Property name: kodo.ConnectionRetainMode

Configuration API: kodo.conf.JDOConfiguration.getConnectionRetainMode

Resource adaptor config-property: ConnectionRetainMode

Default: on-demand

Description: Controls how Kodo uses data store connections. This property can also be specified for individual persistence managers. See Section 4.8, “Configuring the Use of JDBC Connections” for details.

2.6.12. kodo.CopyObjectIds

Property name: kodo.CopyObjectIds

Configuration API: kodo.conf.JDOConfiguration.getCopyObjectIds

Resource adaptor config-property: CopyObjectIds

Default: false

Description: Whether to copy object id values before returning them to your code from the JDOHelper or PersistenceManager. If you ever change object id values you obtain from Kodo, you should set this property to true.

2.6.13. kodo.DataCache

Property name: kodo.DataCache

Configuration API: kodo.conf.JDOConfiguration.getDataCache

Resource adaptor config-property: DataCache

Default: false

Description: A plugin list string (see Section 2.4, “Plugin Configuration”) describing the kodo.datacache.DataCache to use for data caching. See Section 14.3.2, “Kodo JDO Cache Usage” for details.

2.6.14. kodo.DataCacheTimeout

Property name: kodo.DataCacheTimeout

Configuration API: kodo.conf.JDOConfiguration.getDataCacheTimeout

Resource adaptor config-property: DataCacheTimeout

Default: -1

Description: The number of milliseconds that data in the data cache is valid. Set this to -1 to indicate that data should not expire from the cache. This property can also be specified for individual classes. See Section 14.3.2, “Kodo JDO Cache Usage” for details.

2.6.15. kodo.EagerFetchMode

Property name: kodo.EagerFetchMode

Configuration API: kodo.conf.JDOConfiguration.getEagerFetchMode

Resource adaptor config-property: EagerFetchMode

Default: parallel

Description: Optimizes how Kodo loads persistent relations. This property can also be specified on individual persistence manager, query, and extent instances. See Section 14.2, “Eager Fetching” for details.

2.6.16. kodo.FetchBatchSize

Property name: kodo.FetchBatchSize

Configuration API: kodo.conf.JDOConfiguration.getFetchBatchSize

Resource adaptor config-property: FetchBatchSize

Default: -1

Description: The number of rows to fetch at once when scrolling through a result set. This property can also be specified for individual persistence manager, query, and extent instances. See Section 4.10, “Large Result Sets” for details.

2.6.17. kodo.FetchGroups

Property name: kodo.FetchGroups

Configuration API: kodo.conf.JDOConfiguration.getFetchGroups

Resource adaptor config-property: FetchGroups

Default: -

Description: A comma-separated list of fetch group names that are to be loaded when loading objects from the data store. This property can also be set on individual persistence manager, query, and extent instances. See Section 14.5, “Fetch Groups” for details.

2.6.18. kodo.FilterListeners

Property name: kodo.FilterListeners

Configuration API: kodo.conf.JDOConfiguration.getFilterListeners

Resource adaptor config-property: FilterListeners

Default: -

Description: A comma-separated list of full plugin strings (see Section 2.4, “Plugin Configuration”) for custom kodo.jdbc.query.JDBCFilterListeners to make available to all queries, in addition to the standard set of listeners. You can also add filter listeners to individual Kodo JDO query instances. See Section 10.7, “Query Extensions” for details.

2.6.19. kodo.FlushBeforeQueries

Property name: kodo.FlushBeforeQueries

Configuration API: kodo.conf.JDOConfiguration.getFlushBeforeQueries

Resource adaptor config-property: FlushBeforeQueries

Default: with-connection

Description: Whether or not to flush any changes made in the current transaction to the data store before executing a query. See Section 4.8, “Configuring the Use of JDBC Connections” for details.

2.6.20. kodo.InverseManager

Property name: kodo.InverseManager

Configuration API: kodo.conf.JDOConfiguration.getInverseManager

Resource adaptor config-property: InverseManager

Default: false

Possible values: false, true

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing a kodo.runtime.InverseManager to use for correcting inverse relations upon a flush. See Section 5.3, “Managed Inverses” for usage documentation.

2.6.21. kodo.LicenseKey

Property name: kodo.LicenseKey

Configuration API: kodo.conf.JDOConfiguration.getLicenseKey

Resource adaptor config-property: LicenseKey

Default: -

Description: The license key provided to you by SolarMetric. Keys are available at www.solarmetric.com.

2.6.22. kodo.ReadLockLevel

Property name: kodo.ReadLockLevel

Configuration API: kodo.conf.JDOConfiguration.getReadLockLevel

Resource adaptor config-property: ReadLockLevel

Default: read

Possible values: none, read, write, numeric values for lock-manager specific lock levels

Description: The default level at which to lock objects retrieved during a non-optimistic transaction. Note that for the default JDBC lock manager, read and write lock levels are equivalent.

2.6.23. kodo.LockManager

Property name: kodo.LockManager

Configuration API: kodo.conf.JDOConfiguration.getLockManager

Resource adaptor config-property: LockManager

Default: pessimistic

Possible values: none, sjvm, pessimistic

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing a kodo.runtime.LockManager to use for acquiring locks on persistent instances during datastore transactions.

2.6.24. kodo.LockTimeout

Property name: kodo.LockTimeout

Configuration API: kodo.conf.JDOConfiguration.getLockTimeout

Resource adaptor config-property: LockTimeout

Default: -1

Description: The number of milliseconds to wait for an object lock before throwing an exception, or -1 for no limit. See Section 10.8, “Object Locking” for details.

2.6.25. kodo.Log

Property name: kodo.Log

Configuration API: kodo.conf.JDOConfiguration.getLog

Resource adaptor config-property: Log

Default: true

Possible values: kodo, commons, log4j, none

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing a com.solarmetric.log.LogFactory to use for performing logging. For details on logging, see Chapter 3, Logging.

2.6.26. kodo.ManagedRuntime

Property name: kodo.ManagedRuntime

Configuration API: kodo.conf.JDOConfiguration.getManagedRuntime

Resource adaptor config-property: ManagedRuntime

Default: auto

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.ee.ManagedRuntime implementation to use for obtaining a reference to the TransactionManager in an enterprise environment. See Section 13.1, “Integrating with the Transaction Manager” on Integrating with the Transaction Manager for details.

2.6.27. kodo.ManagementConfiguration

Property name: kodo.ManagementConfiguration

Configuration API: kodo.conf.JDOConfiguration.getManagementConfiguration

Resource adaptor config-property: ManagementConfiguration

Default: none

Description: Allows for configuration of management and profiling capabilities. For more information, see Chapter 12, Management and Monitoring.

2.6.28. kodo.ObjectLookupMode

Property name: kodo.ObjectLookupMode

Configuration API: kodo.conf.JDOConfiguration.getObjectLookupMode

Resource adaptor config-property: ObjectLookupMode

Default: check

Description: Determines Kodo's behavior on calls to PersistenceManager.getObjectById when the validate parameter is false. The default value, check checks that the object exists in the database and loads its fetch group fields. Set to hollow to return a hollow object without checking the database instead.

2.6.29. kodo.OrphanedKeyAction

Property name: kodo.OrphanedKeyAction

Configuration API: kodo.conf.JDOConfiguration.getOrphanedKeyAction

Resource adaptor config-property: OrphanedKeyAction

Default: log

Possible values: log, exception, none

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing a kodo.event.OrphanedKeyAction to invoke when Kodo discovers an orphaned datastore key. See Section 10.9, “Orphaned Keys” for details.

2.6.30. kodo.PersistenceManagerImpl

Property name: kodo.PersistenceManagerImpl

Configuration API: kodo.conf.JDOConfiguration.getPersistenceManagerImpl

Resource adaptor config-property: PersistenceManagerImpl

Default: default

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the javax.jdo.PersistenceManager type to use at runtime. See Section 10.2.2, “PersistenceManager Extension” on PersistenceManager Extension for details.

2.6.31. kodo.PersistenceManagerServer

Property name: kodo.PersistenceManagerServer

Configuration API: kodo.conf.JDOConfiguration.getPersistenceManagerServer

Resource adaptor config-property: PersistenceManagerServer

Default: false

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing whether and how to service remote persistence managers with this persistence manager factory. See Section 11.2, “Remote Persistence Managers” for details.

2.6.32. kodo.PersistentClasses

Property name: kodo.PersistentClasses

Configuration API: kodo.conf.JDOConfiguration.getPersistentClasses

Resource adaptor config-property: PersistentClasses

Default: -

Description: A comma-separated list of classes that are to be instantiated whenever a new PersistenceManager is created. See Section 5.7, “Persistent Class List” for details.

2.6.33. kodo.ProxyManager

Property name: kodo.ProxyManager

Configuration API: kodo.conf.JDOConfiguration.getProxyManager

Resource adaptor config-property: ProxyManager

Default: default

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing a kodo.util.ProxyManager to use for proxying mutable second class objects. See Section 5.4.3.3, “Custom Proxies” for details.

2.6.34. kodo.QueryCache

Property name: kodo.QueryCache

Configuration API: kodo.conf.JDOConfiguration.getQueryCache

Resource adaptor config-property: QueryCache

Default: true, when the data cache (see Section 2.6.13, “kodo.DataCache”) is also enabled, false otherwise.

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.datacache.QueryCache implementation to use for caching of queries loaded from the data store. See Section 14.3.3, “Query Caching” on Query Caching for details.

2.6.35. kodo.QueryCompilationCache

Property name: kodo.QueryCompilationCache

Configuration API: kodo.conf.JDOConfiguration.getQueryCompilationCache

Resource adaptor config-property: QueryCompilationCache

Default: true.

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the java.util.Map to use for caching of data used during query compilation.

Table 2.1. Pre-defined aliases

AliasValueNotes
truekodo.util.CacheMap The default option. Uses a CacheMap to store compilation data. CacheMap uses a least-recently-used strategy for a fixed number of cache entries, and an optional soft reference map for entries that are moved out of the LRU space. So, for applications that have a monotonically increasing number of distinct queries, this option can be used to ensure that a fixed amount of memory is used by the cache.
alljava.util.HashMap This is the fastest, but compilation data is never dropped from the cache, so if you use a large number of dynamic queries, this option may result in ever-increasing memory usage. Note that if your queries only differ in the values of the parameters, this should not be an issue.
falsenone Disables the sharing of compilation data between different query compilations.

2.6.36. kodo.RemoteCommitProvider

Property name: kodo.RemoteCommitProvider

Configuration API: kodo.conf.JDOConfiguration.getRemoteCommitProvider

Resource adaptor config-property: RemoteCommitProvider

Default: -

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.event.RemoteCommitProvider implementation to use for distributed event notification. See Section 14.4.1, “Remote Commit Provider Configuration” on Remote Commit Provider Configuration for details.

2.6.37. kodo.RestoreMutableValues

Property name: kodo.RestoreMutableValues

Configuration API: kodo.conf.JDOConfiguration.getRestoreMutableValues

Resource adaptor config-property: RestoreMutableValues

Default: false

Description: Whether to restore mutable second class object fields such as collections and maps to their pre-transaction values when a rollback occurs. When setting this property to true you must also make sure the javax.jdo.option.RestoreValues property described in Section 2.5.13, “javax.jdo.option.RestoreValues” is not set to false.

2.6.38. kodo.RetainValuesInOptimistic

Property name: kodo.RetainValuesInOptimistic

Configuration API: kodo.conf.JDOConfiguration.getRetainValuesInOptimistic

Resource adaptor config-property: RetainValuesInOptimistic

Default: true

Description: If false, then nontransactional objects will be cleared when they are first modified in an optimistic transaction. This cuts down on the possible number of optimistic verification exceptions, but it is not standard JDO behavior and can also have negative performance consequences depending on usage patterns.

2.6.39. kodo.RetryClassRegistration

Property name: kodo.RetryClassRegistration

Configuration API: kodo.conf.JDOConfiguration.getRetryClassRegistration

Resource adaptor config-property: RetryClassRegistration

Default: false

Description: Controls whether to log a warning and defer registration instead of throwing an exception when a class registered with JDO cannot be fully processed. This property should only be used in complex classloader situations where security is preventing Kodo from reading registered classes. Setting this to true unnecessarily may obscure more serious problems.

2.6.40. kodo.SubclassFetchMode

Property name: kodo.SubclassFetchMode

Configuration API: kodo.conf.JDOConfiguration.getSubclassFetchMode

Resource adaptor config-property: SubclassFetchMode

Default: parallel

Description: How to select subclass data when it is in other tables. This property can also be set on individual persistence manager, query, and extent instances. See Section 14.2, “Eager Fetching”.

2.6.41. kodo.TransactionMode

Property name: kodo.TransactionMode

Configuration API: kodo.conf.JDOConfiguration.getTransactionMode

Resource adaptor config-property: TransactionMode

Default: local

Description: The default transaction mode to use when obtaining a persistence manager. This property can also be specified when obtaining an individual persistence manager. See Section 13.1, “Integrating with the Transaction Manager” on Integrating with the Transaction Manager for details.

2.6.42. kodo.jdbc.AutoIncrementConstraints

Property name: kodo.jdbc.AutoIncrementConstraints

Configuration API: kodo.conf.JDBCConfiguration.getAutoIncrementConstraints

Resource adaptor config-property: AutoIncrementConstraints

Default: false

Description: Whether to order SQL to meet dependencies introduced by relations to objects with auto-incrementing primary key values. See Section 5.2.3.2, “Auto-Increment” for details.

2.6.43. kodo.jdbc.ClassIndicator

Property name: kodo.jdbc.ClassIndicator

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getClassIndicator

Resource adaptor config-property: ClassIndicator

Default: in-class-name

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the default kodo.jdbc.meta.ClassIndicator to install on new mappings. See Section 7.8, “Class Indicator” for details.

2.6.44. kodo.jdbc.ConnectionDecorators

Property name: kodo.jdbc.ConnectionDecorators

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getConnectionDecorators

Resource adaptor config-property: ConnectionDecorators

Default: -

Description: A comma-separated list of plugin strings (see Section 2.4, “Plugin Configuration”) describing com.solarmetric.jdbc.ConnectionDecorator instances to install on the connection factory. These decorators can wrap connections passed from the underlying data source to add functionality. Kodo will pass all connections through the list of decorators before using them. Note that by default Kodo JDO employs all of the built-in decorators in the com.solarmetric.jdbc package already; you do not need to list them here.

2.6.45. kodo.jdbc.DataSourceMode

Property name: kodo.jdbc.DataSourceMode

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getDataSourceMode

Resource adaptor config-property: DataSourceMode

Default: local

Description: The data source mode to use when integrating with the application server's managed transactions. See Section 4.2.1, “Enlisted Data Sources” for details.

2.6.46. kodo.jdbc.DBDictionary

Property name: kodo.jdbc.DBDictionary

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getDBDictionary

Resource adaptor config-property: DBDictionary

Default: Based on the javax.jdo.option.ConnectionURL (see Section 2.5.6, “javax.jdo.option.ConnectionURL”) and javax.jdo.option.ConnectionDriverName (see Section 2.5.2, “javax.jdo.option.ConnectionDriverName”).

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.jdbc.sql.DBDictionary to use for database interaction. Kodo JDO typically auto-configures the dictionary based on the JDBC URL, but you may have to set this property explicitly if you are using an unrecognized driver, or to plug in your own dictionary for a database Kodo JDO does not support out-of-the-box. See Section 4.3, “Database Support” for details.

2.6.47. kodo.jdbc.FetchDirection

Property name: kodo.jdbc.FetchDirection

Configuration API: kodo.conf.JDBCConfiguration.getFetchDirection

Resource adaptor config-property: FetchDirection

Default: forward

Description: The expected order in which query result lists will be accessed. This property can also be specified for individual persistence manager, query, and extent instances. See Section 4.10, “Large Result Sets” for details.

2.6.48. kodo.jdbc.ForeignKeyConstraints

Property name: kodo.jdbc.ForeignKeyConstraints

Configuration API: kodo.conf.JDBCConfiguration.getForeignKeyConstraints

Resource adaptor config-property: ForeignKeyConstraints

Default: false

Description: Whether to evaluate database foreign key constraints and order all SQL operations so that referential integrity is not violated. See Section 4.11, “SQL Statement Ordering & Foreign Keys” on SQL Statement Ordering for details.

2.6.49. kodo.jdbc.JDBCListeners

Property name: kodo.jdbc.JDBCListeners

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getJDBCListeners

Resource adaptor config-property: JDBCListeners

Default: -

Description: A comma-separated list of plugin strings (see Section 2.4, “Plugin Configuration”) describing com.solarmetric.jdbc.JDBCListener event listeners to install. These listeners will be notified on various JDBC-related events. The com.solarmetric.jdbc.PerformanceTracker is one such listener that can be used to track JDBC performance.

2.6.50. kodo.jdbc.LRSSize

Property name: kodo.jdbc.LRSSize

Configuration API: kodo.conf.JDBCConfiguration.getLRSSize

Resource adaptor config-property: LRSSize

Default: query

Description: The strategy to use to calculate the size of a result list. This property can also be specified for individual persistence manager, query, and extent instances. See Section 4.10, “Large Result Sets” for details.

2.6.51. kodo.jdbc.MappingFactory

Property name: kodo.jdbc.MappingFactory

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getMappingFactory

Resource adaptor config-property: MappingFactory

Default: file

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.jdbc.meta.MappingFactory to use to store and retrieve object-relational mapping information for your persistent classes. See Section 7.3, “Mapping Factory” on Mapping Factories for details.

2.6.52. kodo.jdbc.ResultSetType

Property name: kodo.jdbc.ResultSetType

Configuration API: kodo.conf.JDBCConfiguration.getResultSetType

Resource adaptor config-property: ResultSetType

Default: forward-only

Description: The JDBC result set type to use when fetching result lists. This property can also be specified for individual persistence manager, query, and extent instances. See Section 4.10, “Large Result Sets” for details.

2.6.53. kodo.jdbc.SchemaFactory

Property name: kodo.jdbc.SchemaFactory

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getSchemaFactory

Resource adaptor config-property: SchemaFactory

Default: native

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.jdbc.schema.SchemaFactory to use to store and retrieve information about the database schema. See Section 8.1.2, “Schema Factory” for details.

2.6.54. kodo.jdbc.Schemas

Property name: kodo.jdbc.Schemas

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getSchemas

Resource adaptor config-property: Schemas

Default: -

Description: A comma-separated list of the schemas and/or tables used for your persistent JDO-related data. See Section 8.1.1, “Schemas List” for details.

2.6.55. kodo.jdbc.SequenceFactory

Property name: kodo.jdbc.SequenceFactory

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getSequenceFactory

Resource adaptor config-property: SequenceFactory

Default: db

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the kodo.jdbc.schema.SequenceFactory to use to generate datastore identity values. See Section 5.2.3.1, “Sequence Factory” for details.

2.6.56. kodo.jdbc.SubclassMapping

Property name: kodo.jdbc.SubclassMapping

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getSubclassMapping

Resource adaptor config-property: SubclassMapping

Default: flat

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the default kodo.jdbc.meta.ClassMapping to install on new subclass mappings. See Section 7.6, “Class Mapping” for details.

2.6.57. kodo.jdbc.SynchronizeMappings

Property name: kodo.jdbc.SynchronizeMappings

Configuration API: kodo.conf.JDBCConfiguration.getSynchronizeMappings

Resource adaptor config-property: SynchronizeMappings

Default: false

Description: Controls whether Kodo will attempt to run the mapping tool on all persistent classes to synchronize their mappings and schema at runtime. Useful for rapid test/debug cycles. See Section 7.2, “Automatic Runtime Mapping” for more information.

2.6.58. kodo.jdbc.TransactionIsolation

Property name: kodo.jdbc.TransactionIsolation

Configuration API: kodo.conf.JDBCConfiguration.getTransactionIsolation

Resource adaptor config-property: TransactionIsolation

Default: default

Description: The JDBC transaction isolation level to use. See Section 4.6, “Setting the Transaction Isolation” for details.

2.6.59. kodo.jdbc.UpdateManager

Property name: kodo.jdbc.UpdateManager

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getUpdateManager

Resource adaptor config-property: UpdateManager

Default: default

Description: The full class name of the kodo.jdbc.runtime.UpdateManager to use to flush persistent object changes to the data store. The provided default implementation ( kodo.jdbc.runtime.UpdateManagerImpl , with a configuration alias of default) will suit all but the most advanced users.

2.6.60. kodo.jdbc.VersionIndicator

Property name: kodo.jdbc.VersionIndicator

Configuration API: kodo.jdbc.conf.JDBCConfiguration.getVersionIndicator

Resource adaptor config-property: VersionIndicator

Default: version-number

Description: A plugin string (see Section 2.4, “Plugin Configuration”) describing the default kodo.jdbc.meta.VersionIndicator to install on new mappings. See Section 7.7, “Version Indicator” for details.

2.6.61. kodo.WriteLockLevel

Property name: kodo.WriteLockLevel

Configuration API: kodo.conf.JDOConfiguration.getWriteLockLevel

Resource adaptor config-property: WriteLockLevel

Default: write

Possible values: none, read, write, numeric values for lock-manager specific lock levels

Description: The default level at which to lock objects changed during a non-optimistic transaction. Note that for the default JDBC lock manager, read and write lock levels are equivalent.