Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/Summit/Topics"

(Advanced Caching)
m (JPA 2.0 MetaModel)
 
(11 intermediate revisions by 4 users not shown)
Line 5: Line 5:
 
===Welcome===
 
===Welcome===
 
''Lead: Doug Clarke''
 
''Lead: Doug Clarke''
 
+
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Welcome.ppt
 
* Introductions
 
* Introductions
 
* Logistics
 
* Logistics
Line 11: Line 11:
  
 
===Overview===
 
===Overview===
 
+
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink_Project_Overview.ppt
 
*JPA - Peter Krogh  
 
*JPA - Peter Krogh  
 
** JPA 1.0, 2.0  
 
** JPA 1.0, 2.0  
Line 25: Line 25:
  
 
===Architecture===
 
===Architecture===
 
+
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Architecture-orm.ppt
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Architecture-MOXyAndSDO.ppt
 
* ORM Architetcture
 
* ORM Architetcture
 
** Sessions
 
** Sessions
Line 38: Line 39:
  
 
===Mapping===
 
===Mapping===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/MappingsAndMetadata.ppt
 
Presenters: Guy & Blaise
 
Presenters: Guy & Blaise
  
Line 51: Line 53:
  
 
===Cache===
 
===Cache===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink_Intro_Cache.ppt
  
 
* Identity Management
 
* Identity Management
Line 62: Line 65:
  
 
===Queries===
 
===Queries===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Queries and Object Building.ppt
  
* Structure: Query Types, Calls, Statements
+
* EclipseLink Query Types
* Query Execution Path
+
** ReadObject, ReadAll, Report (Items), ModifyAll, DataModify, DataReadQuery, DoesExistQuery
** JPA Query Processing
+
** QueryByExample
* Cache Usage
+
* Expressions
** Cache Hits
+
** Expression Builder
** Conforming
+
* JPA translation
* Cloning
+
** JPQL parser, CriteriaBuilder, ResultSetMappingQuery
* Policies
+
* Query Caching
** Instantiation
+
* Object Building
** Clone/Copy
+
** Cache Usage
* Query Caches: Named, Descriptor, JPQL Parse Cache
+
** Instantiation Policy and Clone Copy Policy
* Lazy Loading
+
** Refreshing
** ValueHolders: Query Based, UnitOfWork
+
** FetchGroups
 
+
* Lazy Loading and Queries
 +
* Batch Reading / Join Fetch
  
 
===Transactions===
 
===Transactions===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Transactions.ppt
  
 
* UnitOfWork Basics
 
* UnitOfWork Basics
Line 93: Line 99:
  
 
=== Tooling ===
 
=== Tooling ===
 +
 
''Lead: Karen Butzke''
 
''Lead: Karen Butzke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Persistence Tooling.ppt
  
 
* EclipseLink Workbench
 
* EclipseLink Workbench
Line 107: Line 115:
 
**** Derived Identity
 
**** Derived Identity
 
**** Caching
 
**** Caching
 +
**** Mixed Access Type
 +
**** Nested Embeddables, Relationships in Embeddables
 
*** JAXB Class/Schema Generation
 
*** JAXB Class/Schema Generation
 
*** Validation Preferences
 
*** Validation Preferences
 
** Future Direction
 
** Future Direction
  
=== JPA 2.0===
+
=== JPA 2.0 MetaModel===
 
''Lead: Michael O'Brien & Guy Pelletier''
 
''Lead: Michael O'Brien & Guy Pelletier''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink_JPA2_Metamodel.ppt
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/CanonicalModelGen.ppt
  
* Metamodel
+
* Metamodel ''Michael O'Brien ''
 
** Mapping between JPA 2.0 classes and native metadata metamodel
 
** Mapping between JPA 2.0 classes and native metadata metamodel
 
** Architecture
 
** Architecture
Line 123: Line 135:
 
*** Extended Metamodel API
 
*** Extended Metamodel API
  
* Model Gen
+
* Model Gen ''Guy Pelletier''
 
** Model gen using compiler hooks
 
** Model gen using compiler hooks
 
** Challenges/Issues/Limitations
 
** Challenges/Issues/Limitations
Line 131: Line 143:
 
=== Weaving ===
 
=== Weaving ===
 
''Lead: Tom Ware''
 
''Lead: Tom Ware''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-Weaving.ppt
  
 
* Features Woven
 
* Features Woven
Line 144: Line 157:
  
 
=== Advanced Querying ===
 
=== Advanced Querying ===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/AdvancedQueries.ppt
  
* Queries in Code
+
* Execution
** Expression Framework
+
** EclipseLink query execution
** JPA 2.0 Criteria
+
*** Query To SQL translation
* Optimizations
+
* Cursored Streams
** Joining
+
* Query Redirection
** Batching
+
* Custom Calls
** FetchGroup
+
** StoredProcedure calls
** Projections (ReportQuery)
+
* InmemoryQuerying / Conforming
* Cache Usage
+
** Conforming limitations
** Conforming
+
** InMemoryQueryIndirectionPolicy
** In-memory
+
* Query Options
* Query Redirectors
+
** CacheUsage
* Query Life-cycle Events
+
* Stored Procedures
+
  
 
=== Advanced Caching ===
 
=== Advanced Caching ===
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Advanced-Cache.ppt
  
 
* Isolated Caches
 
* Isolated Caches
 +
** JPA Cacheable(false)
 +
* Invalidation
 +
** JPA Cache.evict()
 
* Cache concurrency
 
* Cache concurrency
 
** ReadLocks
 
** ReadLocks
Line 173: Line 189:
 
=== Management, Diagnostics, & Tuning===
 
=== Management, Diagnostics, & Tuning===
 
''Lead: James Sutherland''
 
''Lead: James Sutherland''
 +
 
* Logging
 
* Logging
 
* MBeans
 
* MBeans
Line 182: Line 199:
 
=== Customization ===
 
=== Customization ===
  
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Customizing.ppt
 
* Customizers: Session & Descriptor
 
* Customizers: Session & Descriptor
 
* Listeners: Session & Descriptor
 
* Listeners: Session & Descriptor
Line 193: Line 211:
 
=== Dynamic Persistence ===
 
=== Dynamic Persistence ===
 
''Lead: Doug Clarke''
 
''Lead: Doug Clarke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Dynamic Persistence.ppt
  
 
* Background and Usage Examples
 
* Background and Usage Examples
Line 207: Line 226:
 
===EclipseLink and OSGi===
 
===EclipseLink and OSGi===
 
''Lead: Tom Ware''
 
''Lead: Tom Ware''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-OSGi.ppt
  
 
* Impact of OSGi enabling EclipseLink
 
* Impact of OSGi enabling EclipseLink
Line 219: Line 239:
 
=== Documentation ===
 
=== Documentation ===
 
''Lead: Rick Sapir''
 
''Lead: Rick Sapir''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-Documentation.odp
 
* Current State
 
* Current State
 
* Requirements Review
 
* Requirements Review
Line 227: Line 248:
 
===Process===
 
===Process===
 
''Lead: Peter Krogh''
 
''Lead: Peter Krogh''
 
+
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/Process.ppt
 
* Eclipse Processes
 
* Eclipse Processes
 
** IP process, log, use of Bugzilla
 
** IP process, log, use of Bugzilla
Line 243: Line 264:
 
===Build===
 
===Build===
 
''Lead: Eric Gwin''
 
''Lead: Eric Gwin''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/
  
 
* Current Build Overview
 
* Current Build Overview
Line 251: Line 273:
 
===Test===
 
===Test===
 
''Lead: Tom Ware''
 
''Lead: Tom Ware''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/EclipseLink-Testing.ppt
  
 
* Current Test Overview
 
* Current Test Overview
Line 260: Line 283:
 
===Road Map===
 
===Road Map===
 
''Lead: Doug Clarke''
 
''Lead: Doug Clarke''
 +
* http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/incubator/summit-2010/RoadMap.ppt
  
 
* Release infrastructure
 
* Release infrastructure

Latest revision as of 16:01, 8 September 2010

EclipseLink Summit Topics

TUESDAY

Welcome

Lead: Doug Clarke

Overview

Architecture

  • MOXy Architecture
    • XML Context/Session

Mapping

Presenters: Guy & Blaise

  • Mapping Types
  • Mapping Options
    • JPA: annotations, orm.xml, EL annotations, eclispelink-orm.xml
    • Native: sessions.xml, deployment (project) xml
    • Hand coded (API)
  • XML Processing using MOXy
    • Schema Validation
    • Schema Version & Backwards Compatibility
  • JPA Metadata Processing

Cache

  • Identity Management
  • Cache Structure:
    • IdentityMaps
    • CacheKey
    • Locking
  • Concurrency & Locking
  • Invalidation
  • Configuration Best Practices

Queries

  • EclipseLink Query Types
    • ReadObject, ReadAll, Report (Items), ModifyAll, DataModify, DataReadQuery, DoesExistQuery
    • QueryByExample
  • Expressions
    • Expression Builder
  • JPA translation
    • JPQL parser, CriteriaBuilder, ResultSetMappingQuery
  • Query Caching
  • Object Building
    • Cache Usage
    • Instantiation Policy and Clone Copy Policy
    • Refreshing
    • FetchGroups
  • Lazy Loading and Queries
  • Batch Reading / Join Fetch

Transactions

  • UnitOfWork Basics
    • Change Tracking
    • ChangeSets
    • ChangeTracking
    • Commit/flush process
    • Merge
  • RepeatabaleWriteUnitOfWork
    • FlushMode
  • Session Events

WEDNESDAY

Tooling

Lead: Karen Butzke

  • EclipseLink Workbench
  • JDeveloper
  • Dali
    • Generic JPA
    • EclipseLink JPA
    • Library Configuration
    • New In Helios
      • JPA 2.0 platform
        • Canonical Model Generation
        • Element Collection including Map support
        • Derived Identity
        • Caching
        • Mixed Access Type
        • Nested Embeddables, Relationships in Embeddables
      • JAXB Class/Schema Generation
      • Validation Preferences
    • Future Direction

JPA 2.0 MetaModel

Lead: Michael O'Brien & Guy Pelletier

  • Metamodel Michael O'Brien
    • Mapping between JPA 2.0 classes and native metadata metamodel
    • Architecture
    • Initialization
    • Demo
    • Challenges/Issues
    • Future
      • Extended Metamodel API
  • Model Gen Guy Pelletier
    • Model gen using compiler hooks
    • Challenges/Issues/Limitations
    • Future
      • EclipseLink extended mapping

Weaving

Lead: Tom Ware

  • Features Woven
    • Lazy Loading
    • Change Tracking
    • State Caching: Identity, Session
  • Configuration
    • Persistence Unit Properties
    • Dynamic Weaving
    • Static Weaving
  • Challenges/Issues
  • Future Direction

Advanced Querying

  • Execution
    • EclipseLink query execution
      • Query To SQL translation
  • Cursored Streams
  • Query Redirection
  • Custom Calls
    • StoredProcedure calls
  • InmemoryQuerying / Conforming
    • Conforming limitations
    • InMemoryQueryIndirectionPolicy
  • Query Options
    • CacheUsage

Advanced Caching

  • Isolated Caches
    • JPA Cacheable(false)
  • Invalidation
    • JPA Cache.evict()
  • Cache concurrency
    • ReadLocks
    • DeferredLocks
    • Active Locks
    • WriteLockManager
  • Cache Interceptors
    • distributed cache integrations

Management, Diagnostics, & Tuning

Lead: James Sutherland

  • Logging
  • MBeans
  • Profilers
  • Performance Tuning Infrastructure
    • Guidelines for Developers
  • User Best Practices

Customization

Dynamic Persistence

Lead: Doug Clarke

  • Background and Usage Examples
  • Solution Design
    • Config: Native XML, API, eclipselink-orm.xml
  • Challenges/Issues/Limitations
  • Future

THURSDAY

EclipseRT

Presenter: Jeff McAffer, EclipseSource

EclipseLink and OSGi

Lead: Tom Ware

  • Impact of OSGi enabling EclipseLink
    • Commiter Do's and Don'ts
  • Migrating to Gemini JPA
    • Gemini in a Nutshell
    • javax.persistence
    • backwards compatibility
  • Future Direction
    • Further bundle refactoring

Documentation

Lead: Rick Sapir

Process

Lead: Peter Krogh

Build

Lead: Eric Gwin

  • Current Build Overview
  • Challenges/Issues
  • Future
    • PDE Build?

Test

Lead: Tom Ware

  • Current Test Overview
  • Challenges/Issues
    • JPA
      • Persistence Units
      • Weaving

Road Map

Lead: Doug Clarke

  • Release infrastructure
    • Project Plans
    • Wiki
    • Web Site
  • Post 2.1 (Helios Planning)
    • Themes
    • Releases/Patches before next annual
    • Next Annual Release

Back to the top